0

我的 PHP 代码有一些问题。我有一个 php 文件,它显示来自 MySQL 数据库的记录列表,当用户单击记录时,我想要它,他们可以获得有关该记录的更多详细信息。我已经创建了第二个 php 文件的链接,但是当我单击任何记录时,我不断收到“数据错误” 。

我在 php 中有代码检查 User_ID 是否为数字,并且我检查了数据库设置以确保该字段被格式化为 INT(它也是外键,因此数字是唯一的)。

第一个文件中的 php 代码是:

<table>


<?php 
// Connects to your Database 
mysql_connect("server","username","password") or die(mysql_error()); 
mysql_select_db("databsename") or die(mysql_error()); 
$data = mysql_query("SELECT `User_ID`,`Market_Name`, `Days`, `Time`,`Image`  FROM `markets_info`ORDER BY `Market_Name`; ")  
or die(mysql_error()); 
echo "<tr><th>Name</th><th>Day</th><th>Time</th><th>Image</th></tr>";

while($info = mysql_fetch_array( $data )) 

{  
echo "<tr>"; 
echo "<td><a href=mktdetails.php?id=$info[User_ID]>$info[Market_Name]</a></td> "; 
echo "<td>".$info['Days'] . " </td> "; 
echo "<td>".$info['Time'] . " </td> "; 
echo  "<td>".'<img src="' . $info['Image'] . '" height="80" width="150" />'."</td> ";
echo"</tr>"; 


} 


?> 

</table>

mktdetails.php 是:

<table style="width:860px" border="1" class="auto-style15">

<?php 
// Connects to your Database 
mysql_connect("server","username","password") or die(mysql_error()); 
mysql_select_db("databse") or die(mysql_error()); 

$id=$_GET["User_ID"]; // Collecting data from query string
if(!is_numeric($id)){ // Checking data it is a number or not
echo "Data Error";
exit;
}

$data=mysql_query("SELECT * FROM `markets_info` WHERE `User_ID`=$id");
$row=mysql_fetch_object($data);
echo mysql_error();

echo"<tr><td>$row->Market_Name</td></tr>";
echo"<tr><td>$row->Days</td></tr>";
echo"<tr><td>$row->Time</td></tr>";
echo"<tr><td>$row->Description</td></tr>";


?> 
</table>
4

1 回答 1

1

看来您没有通过 GET 'User_ID'

echo "<td><a href=mktdetails.php?id=$info[User_ID]>$info[Market_Name]</a></td> "; 

应该是这样的:

echo "<td><a href='mktdetails.php?User_ID=".$info[User_ID]."'>".$info[Market_Name]."</a></td> "; 
于 2013-09-06T10:12:34.037 回答