PHP和MySQL SESSION,取最后一行


PHP and MySQL SESSION, taking last row

这里显示的是MySQL的数据表,比如x.php中的

    <?php $sql = "SELECT * FROM tblname";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
     while($row = $result->fetch_assoc()) {
      $id=$row["id"]; 
         echo "<tr><td>". $row["0"]. "</td><td>". $row["1"]."</td><td>".$row["2"]."</td><td>".$row["3"]."</td><td>"."<a href='y.php?=$id'>More details</a>"."</td></tr>";
        $_SESSION["id"]=$id;
     }
} else {
}?>

但是我去y.p php类查看更多细节,它只显示最后一行MySQL记录的数据。我该怎么修理它?

问题是您正在使用$_SESSION来获取详细信息。您想要的不是将id存储在$_SESSION中,而是将它放在每个链接中,这样当用户单击链接时,他就可以访问行详细信息。

基本上,在链接中传递的参数(如index.php?param1=value1)在$_GET全局变量中找到。

所以我猜在y.p php中你使用$_SESSION['id']来获取行细节,使用$_GET['id']代替。

同样,在x.p p中编辑如下:

"<a href='y.php?=$id'>More details</a>"

:

"<a href='y.php?id=$id'>More details</a>"

并删除:$_SESSION['id'] = $id;