【发布时间】:2017-12-31 00:35:37
【问题描述】:
我有一个 MySQL 驱动的房间预订日历。我想从 2 个表中读取数据 - 每 2 行:
-
表
entry:id start_time End_time entry_type repeat_id room_id timestamp creat_by name -
表
room:id disabled area_id room_name sort_key
理想情况下,我想从表 entry 中读取列 start_time、room_id 和 name。以及来自表room 的room_name。
我还在做梦,所以现在我想将这些按对应分组并写在 html 表格中,在一行/表格中分组为名称,另外三个在下面一行的表格中
room name| start time |-|end_time|
我一直在尝试,但似乎无法让它实现我的梦想。
if (!mysql_connect($db_host, $db_user, $db_pwd))
die("Can't connect to database");
if (!mysql_select_db($database))
die("Can't select database");
// sending query
$result = mysql_query("SELECT *
FROM $bookings
WHERE start_time >= UNIX_TIMESTAMP(CURRENT_DATE)
AND start_time < UNIX_TIMESTAMP(CURRENT_DATE + INTERVAL 1 DAY)
ORDER BY start_time, room_id");
if (!$result) {
die("Query to show fields from table failed");
}
$fields_num = mysql_num_fields($result);
echo "<h1>Table: {$table}</h1>";
echo "<table border='1'><tr>";
// printing table headers
for($i=0; $i<$fields_num; $i++)
{
$field = mysql_fetch_field($result);
echo "<td>{$field->name}</td>";
}
echo "</tr>\n";
// printing table rows
while($row = mysql_fetch_row($result))
{
echo "<tr>";
// $row is array... foreach( .. ) puts every element
// of $row to $cell variable
foreach($row as $cell)
echo "<td>$cell</td>";
echo "</tr>\n";
}
mysql_free_result($result);
?>
</body></html>
请帮忙
【问题讨论】:
-
谢谢 nikola,我想我明白了一点,但是当我尝试它时,我只在查询的第一行得到意外的 T_Variable:// 发送查询 $result = mysql_query(SELECT * FROM $bookings. start_time, $bookings.name, $rooms.room_name FROM $bookings inner join $rooms on $bookings.RoomID = $rooms.RoomID WHERE start_time >= UNIX_TIMESTAMP(CURRENT_DATE) AND start_time
标签: sql html-table rows