SELECT查询只是SELECTING / CHECKING第一行,我如何SELECT / CHECK all

时间:2015-06-25 22:14:19

标签: php mysql sql arrays database

我有这个简单的查询:

$q5 = "select listingid FROM userlisting WHERE userid = '$_SESSION[UserID]'";
$r5 = mysql_query($q5) or die(mysql_error());
$a5 = mysql_fetch_array($r5);

用户列表表是多对多的关系。它用作查找表。每个用户标识都可以与多个标识符相关联,反之亦然。

同样在我的文件(html模板文件)中我有这段代码

if(!empty($_SESSION[UserID]) and $a5['listingid'] == $_GET['id']) :

所以我想检查userlisting表中的listingid列是否是页面的id(好吧,它是属性网站,它是属性的id)。由于每个用户都可以与许多listingid相关联,因此我需要能够检查多行。但由于某种原因,它只检查第一行。

在用户列表中,有以下测试条目: userid | listingid 1 1 1 2

因此一个用户与两个listingids相关联。但是,它的行为就像这个用户标识只与清单1(第一行)相关联。

1 个答案:

答案 0 :(得分:0)

你只抓住第一个条目。

$a5 = mysql_fetch_array($r5);

这不会获取整个查询结果,而只会获取第一行。如果没有,则返回false

您必须创建一个循环才能获得更多结果。