Php 恢复具有特定ID的MySQL项目
我目前有一个数据库,其中项目以specefic ID(EventCode)存储。当我试图用他们唯一的ID在我的网站上显示他们时,一切都搞砸了。有些项目正常,正确显示A、B、C和D。其他一些项目显示与其他项目相同的A、B、C和D。当我查看每个项目的事件代码时,它是一个不同的代码。。。那么关于下面的代码,我的问题是什么?为什么有些项目显示出了它们在该项目中应该显示的内容,而另一些项目显示的内容与以前创建的项目相同Php 恢复具有特定ID的MySQL项目,php,mysql,Php,Mysql,我目前有一个数据库,其中项目以specefic ID(EventCode)存储。当我试图用他们唯一的ID在我的网站上显示他们时,一切都搞砸了。有些项目正常,正确显示A、B、C和D。其他一些项目显示与其他项目相同的A、B、C和D。当我查看每个项目的事件代码时,它是一个不同的代码。。。那么关于下面的代码,我的问题是什么?为什么有些项目显示出了它们在该项目中应该显示的内容,而另一些项目显示的内容与以前创建的项目相同 <?php include('base.php'); ?> <?p
<?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>
这是“”的配置文件:
字段:
如果$EventCode
不是唯一的,则只会得到“第一条”记录,因为您没有在结果集上迭代
如果要列出所有记录,请执行以下操作:
-执行while($dnn=mysql_fetch_array($dn)){/*…*/}
如果只需要一条记录:-请使用唯一键或组合键。或者,您可以对查询进行排序和限制。远离mysql.*.\@萨米特:不行。
(intval)
将强制该值仅为int。但是,是的,否则将存在注入漏洞。此漏洞中的任何内容都不会重新排列这样的值。你确定他们的顺序正确吗?e、 g.尝试手动运行各种查询,查看不同记录的结果。是的,它们都在数据库中,顺序正确!事件代码是唯一的。实际上我有所有记录的清单。问题是,当我点击一条特定的记录时,它有时会显示另一条记录的相同元素。