我在点击表格行<tr>
时尝试显示数据的更多详细信息。但我不知道如何实现它。这是我的代码
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "hotel_dir";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT hotel_img, hotel_name, hotel_address, hotel_phone FROM hotel";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
echo "<table>";
// output data of each row
while($row = $result->fetch_assoc()) {
echo "<tr><td><img src=".$row["hotel_img"].
"></td><td>".$row["hotel_name"].
"<br />".$row["hotel_address"].
"</td><td>".$row["hotel_phone"].
"</td></tr>";
}
echo "</table>";
} else {
echo "0 results";
}
$conn->close();
?>
这是图像。 hotel list
问题是,我试图将它传递给hotel.php,显示点击表格行时酒店的更多细节。
答案 0 :(得分:0)
您的hotel
表格中必须有一个Id字段,您可以将其包含在内,并有一个锚标记链接到具有此ID的其他页面,
实际上是这样的事情:
对于SQL语句:
对于SQL语句,您选择id和您之前已选择的字段,因为通常id是表中的唯一列,您可以获取一行的详细信息并显示指定ID的所有详细信息。
在此页面中,您的sql语句应更改为:
$sql = "SELECT id,hotel_img, hotel_name, hotel_address, hotel_phone FROM hotel";
并且在detail.php
页面中你的SQL语句必须是这样的(当然我没有考虑安全性):
$sql = "SELECT * FROM hotel where id=".$_GET['id'];
表格:
在这里,我刚刚添加了a
标记调用detail.php文件,其中包含参数id
,您可以在details.php
中获取显示详细信息
echo "<tr>
<td><a href="http://yoursite.dev/detail.php?id=".$row["id"]>See Details</a></td>
<td><img src=".$row["hotel_img"]."></td>
<td>".$row["hotel_name"].
"<br />".$row["hotel_address"].
"
</td>
<td>".$row["hotel_phone"].
"
</td>
</tr>";
在detail.php
文件中,您获得id
参数$_GET['id']
,并显示指定id
的更多详细信息