我有房间的预订日历,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
理想情况下,我想阅读表start_time
中的room_id
,name
和entry
列。以及表room_name
的room
。
我仍然在做梦,所以现在我希望将这些按照相应的分组并在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>
请帮忙
我不知道php,但我认为查询应如下所示:
SELECT 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 < UNIX_TIMESTAMP(CURRENT_DATE + INTERVAL 1 DAY)
ORDER BY start_time, room_id