我在 stackoverflow 上进行了研究,试图找出是否有人也遇到了同样的问题。我知道这很简单,甚至我真的不知道错误是什么,因为我的查询没有问题。
在上一页上,这是我用于检索 ID 号的代码,以便我能够选择具有该 ID 号的数据:
<a href="package.php?place_id=<?php $row['place_id'];?>"><?php echo $row['place_name'];?></a>
我首先尝试打印地点 id 的值,效果很好。 但是当调用Package页面时,我想要显示的数据并没有显示出来。 我查看了 URL,它在 package.php 之后显示了此内容
place_id=
我不知道为什么它是空白的,请检查我的代码是否缺少或只是错误。
在我的包页面中,这是 PHP 代码:
<?php
include("common/connect.php");
$place_id = $_GET['place_id'];
$result = mysql_query("SELECT * FROM package_items WHERE place_id = '$place_id'");
$row1 = mysql_fetch_array(mysql_query("SELECT place_name FROM packages WHERE place_id = '$place_id'"));
if($result === FALSE) {
die(mysql_error()); // for better error handling
}
?>
在 HTML 代码中:
<h1><?php echo $row1['place_name'];?></h1>
<?php while($row=mysql_fetch_array($result)) {?>
<?php echo $row['item_title'];?>
<br>
<a href="package-places.php"> Back </a>
<?php } ?>
请检查我的代码。谢谢。
最佳答案
您没有打印它。
改变
<?php $row['place_id'];?> // It will output nothing as no echo or print.
至
<?php echo $row['place_id'];?>
其余代码看起来不错。
三点建议: 1) $place_id = $_GET['place_id'];
更改为
$place_id = !空($_GET['place_id'])? $_GET['place_id'] : '';//避免任何警告。
2) 不要将 $_GET
或 $_POST
中的变量提供给任何 SQL。
3) 不要使用 mysql_
函数,因为它们已被弃用,并将在未来版本的 PHP 中删除。
关于php - 无法从上一页检索数据(PHP 和 MYSQL),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27438063/