我之前在mysql中创建了一个数据库,现在我尝试在表中列出它的所有值,但是我在行上遇到以下错误Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean
:while ($row=mysql_fetch_array($result))
这是我的代码:
$con=mysql_connect("localhost","root","");
if (!$con) {
die("Error: " . mysql_error);
}
mysql_select_db("my_db",$con);
$result = mysql_query("SELECT * FROM Users");
echo "<table border='1'>
<tr>
<th>Username</th>
<th>First Name</th>
<th>Last Name</th>
<th>Age</th>
<th>Email adress</th>
</tr>";
while($row=mysql_fetch_array($result)) {
echo "<tr>";
echo "<td>" . $row['username'] . "</td>";
echo "<td>" . $row['firstname'] . "</td>";
echo "<td>" . $row['lastname'] . "</td>";
echo "<td>" . $row['age'] . "</td>";
echo "<td>" . $row['emailadress'] . "</td>";
echo"</tr>";
}
echo "</table>";
mysql_close($con);
我读了其他类似的问题,但没有得到答案。
答案 0 :(得分:1)
您的代码不会评估MySQL关于选择数据库或运行查询的响应。该错误表明您的查询未成功(因此mysql_query返回FALSE) - 这意味着上述一个或两个都不起作用。
选择数据库并使用die(mysql_error())时测试错误;看看这些电话失败的原因。
答案 1 :(得分:0)
确保此行实际获取表中的行: $ result = mysql_query(“SELECT * FROM Users”);
尝试在该查询中执行错误检查:
$result = mysql_query("SELECT * FROM Users") or die(mysql_error());
可能您的表格被称为“用户”而不是“用户”(请注意上限),因此请相应更改。
此致 RICHI