我目前有一个数据库,其中的项目存储有一个specefic ID(EventCode)。当我尝试使用他们的唯一ID在我的网站上显示它们时,它们都搞砸了。有些项目没问题,并正确显示A,B,C和D.其他一些项目显示其他事件的A,B,C和D相同。当我查看每个项目的EventCode时,它是一个不同的代码......所以关于下面的代码,我的问题是什么?为什么某些项目完全显示他们认为该节目的内容,而其他项目显示与alredy创建的项目相同?
<?php
include('base.php');
?>
<?php
if(isset($_GET['EventCode']))
{
$EventCode = intval($_GET['EventCode']);
$dn = mysql_query("select A, B, C, D from users_event where EventCode=$EventCode ");
if(mysql_num_rows($dn)>0)
{
$dnn = mysql_fetch_array($dn);
?>
This is the profile of "<?php echo htmlentities($dnn['A']); ?>" :
<table style="width:500px;">
<tr>
<td><?php
if($dnn['B']!='')
{
echo '<img src="'.htmlentities($dnn['B']).'" alt="B" style="max-width:100px;max-height:100px;" />';
}
else
{
echo 'B is not existing.';
}
?>
</td>
<td class="left"><h1><?php echo htmlentities($dnn['C']); ?></h1>
Field: <?php echo htmlentities($dnn['D']); ?><br />
</tr>
</table>
<?php
}
else
{
echo 'Sorry, no record found.';
}
}
else
{
echo 'No item found';
}
?>
</body>
</html>
答案 0 :(得分:0)
如果$EventCode
不是唯一的,那么您只会获得“第一个”记录,因为您没有迭代结果集。
如果要列出所有记录:
- 做一个while ($dnn = mysql_fetch_array($dn)) { /*...*/ }
如果您只想要一条记录: - 使用UNIQUE键或组合。或者,您可以订购和限制您的查询。