使用Mysql在php循环中获取数组时获取错误

use*_*315 0 php mysql

我有以下代码有两个查询.第一个获取将在下一个查询中使用的ID.我在第二个查询上出现此错误:

Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\b\pprincipal.php on line 132

这是第一个查询(对于该表中存在数据的用户的ID)

$query2 = mysql_query("SELECT DISTINCT competencias, id_user FROM ce");
$ut = array();
while ($result = mysql_fetch_array($query2)) $ut[] = $result;
   foreach ($ut as $u){
 $id_user=$u[1];
 echo "<li class='has-sub'><a>" .$u[0]. "</a>";
}
Run Code Online (Sandbox Code Playgroud)

这是查询给我的错误:

$query3 = mysql_query("SELECT id, nome FROM utilizadores WHERE id=$id_user");
$utt = array();
while ($result2 = mysql_fetch_array($query3, $con)) $utt[] = $result2;
foreach ($utt as $u2){
   echo "<ul><li><a>". $u2[0]. "</a></li>";
}
Run Code Online (Sandbox Code Playgroud)

第二个查询是正确的,因为我已经回应了数组,它没关系.但它给了我WHILE循环错误.

dx4*_*dx4 5

我认为错误可能在这里:

$query3 = mysql_query("SELECT id, nome FROM utilizadores WHERE id=$id_user");
Run Code Online (Sandbox Code Playgroud)

如果"nome"确实是"nome"而不是"name",那么请尝试以下查询:

$query3 = mysql_query("SELECT `id`, `nome` FROM utilizadores WHERE id='$id_user'");
Run Code Online (Sandbox Code Playgroud)

请注意``与'不同'.