我有一个页面显示数据库中的一些信息。我想在每一行中添加一个链接(比如将名字作为链接),我可以点击该链接,跳转到显示该行其余信息的页面(比如个人资料页面)。我考虑创建一个链接,将id传递给个人资料页面,以便个人资料页面可以获取信息。
我确定这很简单,但我就是不明白。如何在每一行中显示只发送该行的id号码的链接?因为我不想去每一行都创建一个特殊的链接。
以下是我拥有的代码:
<?php $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDB"; // 创建连接 $conn = new mysqli($servername, $username, $password, $dbname); // 检查连接 if ($conn->connect_error) { die("连接失败: " . $conn->connect_error); } $sql = "SELECT id, FirstName, LastName, Phone, Email FROM Contacts"; $result = $conn->query($sql); if ($result->num_rows > 0) { // 输出每一行的数据 while($row = $result->fetch_assoc()) { echo "id: " . $row["id"]. " - Name: " . $row["FirstName"]. " " . $row["LastName"]. " " . $row["Phone"]. " " . $row["Email"]. "
"; } } else { echo "0 结果"; } $conn->close(); ?>```
P粉9981006482023-09-11 09:22:48
根据您的示例,您可以这样做:
<?php $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDB"; // 创建连接 $conn = new mysqli($servername, $username, $password, $dbname); // 检查连接 if ($conn->connect_error) { die("连接失败: " . $conn->connect_error); } $sql = "SELECT id, FirstName, LastName, Phone, Email FROM Contacts"; $result = $conn->query($sql); if ($result->num_rows > 0) { // 输出每行数据 while ($row = $result->fetch_assoc()) { echo "id: " . $row["id"] . " - Name: <a href='profile.php/?id=" . $row["id"] . "> " . $row["FirstName"] . "</a> " . $row["LastName"] . " " . $row["Phone"] . " " . $row["Email"] . " <br/>"; } } else { echo "0 结果"; } $conn->close(); ?>
那个 profile.php 页面将使用 isset
检查 id 是否设置,并根据 id
查询数据,类似于这样:PHP & MYSQL: Select from where id=$id
未经测试,请确保对任何用户生成的变量进行过滤处理。