我创建一个表并以简短的表格报告格式显示来自MySQL的条目。当我点击其名称中的链接时,表中的每个条目都有其他属性,我想在单独的页面上显示。
<?php
require_once 'includes/db.php';
connect();
$query = "SELECT * FROM persons order by date_entered DESC LIMIT 5";
$response = mysqli_query($con, $query);
if($response){
echo '<div id="frm"> <h2> Last 5 candidates entered </h2> <table align="left">
<tr>
<td align="left"><b>First Name</b></td>
<td align="left"><b>Email</b></td>
<td align="left"><b>Sex</b></td>
<td align="left"><b>City</b></td>
<td align="left"><b>Phone Number</b></td>
<td align="left"><b>Education</b></td>
<td align="left"><b>Salary</b></td>
</tr>';
while($row = mysqli_fetch_array($response)){
echo '<tr>
<td align="left">' . '<a href="person.php">' . $row["first_name"] . " " .$row['last_name'] . '</a>' . '</td>
<td align="left">' . $row['email'] . '</td>
<td align="left">' . $row['sex'] . '</td>
<td align="left">' . $row['city'] . '</td>
<td align="left">' . $row['phone'] . '</td>
<td align="left">' . $row['education'] . '</td>
<td align="left">' . $row['salary'] . '</td>';
echo '</tr>';
}
echo '</table>';
} else {
echo "Couldn't issue database query<br />";
echo mysqli_error($con);
}
mysqli_close($con);
?>
这给了我一个表格报告,其中包含名称中的链接:
brief report with link in names
我的问题是:如果我在表格中单击Mary Swanson,我在person.php中使用了哪些变量,以便我可以检索该记录的MySQL数据?
感谢。
答案 0 :(得分:0)
您可以通过链接将此ID作为GET变量传递,并在另一端使用它来查询数据库中的特定记录,如下所示:
<?php
require_once 'includes/db.php';
connect();
$query = "SELECT * FROM persons order by date_entered DESC LIMIT 5";
$response = mysqli_query($con, $query);
if($response){
echo '<div id="frm"> <h2> Last 5 candidates entered </h2> <table align="left">
<tr>
<td align="left"><b>First Name</b></td>
<td align="left"><b>Email</b></td>
<td align="left"><b>Sex</b></td>
<td align="left"><b>City</b></td>
<td align="left"><b>Phone Number</b></td>
<td align="left"><b>Education</b></td>
<td align="left"><b>Salary</b></td>
</tr>';
while($row = mysqli_fetch_array($response)){
echo '<tr>
<td align="left">' . '<a href="person.php?id=' . $row["id"] . '">' . $row["first_name"] . " " .$row['last_name'] . '</a>' . '</td>
<td align="left">' . $row['email'] . '</td>
<td align="left">' . $row['sex'] . '</td>
<td align="left">' . $row['city'] . '</td>
<td align="left">' . $row['phone'] . '</td>
<td align="left">' . $row['education'] . '</td>
<td align="left">' . $row['salary'] . '</td>';
echo '</tr>';
}
echo '</table>';
} else {
echo "Couldn't issue database query<br />";
echo mysqli_error($con);
}
mysqli_close($con);
?>
然后你可以访问另一方的变量,如$ _GET [“id”])
<?php
require_once 'includes/db.php';
connect();
$query = "SELECT * FROM persons where id = " . $_GET["id"]);
$response = mysqli_query($con, $query)
在此之后,您可以打印查询返回的值,就像多行选择的位置一样,但只返回一行,您仍需要执行while,因为它返回的是一个数组。