Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/rust/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 尝试用sql数据填充选择框,我的查询将生成重复的元素(PHP、sql)_Mysql - Fatal编程技术网

Mysql 尝试用sql数据填充选择框,我的查询将生成重复的元素(PHP、sql)

Mysql 尝试用sql数据填充选择框,我的查询将生成重复的元素(PHP、sql),mysql,Mysql,我正在使用PHP用数据填充一个选择框。然后我有一个if语句来检查while循环中的当前选项是否是应该选择的选项 在我的PHP中,我以相同的方式组织了两个while循环,但是名称ID循环不起作用,而Desc ID循环起作用,并按原意设置所选选项 此外,我知道此代码易受攻击。我计划在功能正常运行后保护它。您有几个问题。首先,您从错误的位置获取$currentVenueID,它应该设置为第一个查询$sqlQuery的结果。其次,您的$rowObj=$VenuNameQueryResult->fetch

我正在使用PHP用数据填充一个选择框。然后我有一个if语句来检查while循环中的当前选项是否是应该选择的选项

在我的PHP中,我以相同的方式组织了两个while循环,但是名称ID循环不起作用,而Desc ID循环起作用,并按原意设置所选选项


此外,我知道此代码易受攻击。我计划在功能正常运行后保护它。

您有几个问题。首先,您从错误的位置获取$currentVenueID,它应该设置为第一个查询$sqlQuery的结果。其次,您的$rowObj=$VenuNameQueryResult->fetchObject;正在有效地从您的场馆列表中删除第一个场馆。要解决这个问题,请行动起来

$currentVenueID = $rowObj->venueID;
在第一次查询后重新分配$rowObj之前,例如,将其置于

$currentCatID = $rowObj->catID;
然后你就可以安全地移除

$rowObj = $venueNameQueryResult->fetchObject();

代码应该可以正常工作。

您使用了两次fetchObject,这就是为什么。@FunkFortyNiner我删除了其中一个,并得到了未定义的属性错误。您能解释一下我需要更改什么以及它需要更改什么吗?替换$rowObj=$VenuneNameQueryResult->fetchObject$currentVenueID=$rowObj->venueID;使用$currentVenueID=@Nick感谢您的输入,但这不起作用。我的目标是,如果当前值不清楚,则将其选中。有什么想法吗?@badatp我明白你的意思了。目前,尽管$currentVenueID=$rowObj->venueID;正在为$currentVenueID分配一个不确定的值。我认为除了查询结果的第一行之外,您还需要其他方法来分配$currentVenueID。