Php mysql_num_行始终为零,尽管事实如此
我已经安装了mySQL datanase,由phpMyAdmin管理它。 我有一个测试数据库,其中有一个“users”表和一行 在phpMyAdmin中,当我执行“从用户选择*时”,我正确地接收到了我的一行 现在我已经构建了一个小的PHP hello world页面,它连接到同一个数据库,并使用我打开的完全特权用户凭证。它提交相同的查询,但出于某种奇怪的原因,mysql\u num\u行始终为零 这是我使用的代码。请注意,加载网页时,我在网页上看到以下调试消息:Php mysql_num_行始终为零,尽管事实如此,php,mysql,Php,Mysql,我已经安装了mySQL datanase,由phpMyAdmin管理它。 我有一个测试数据库,其中有一个“users”表和一行 在phpMyAdmin中,当我执行“从用户选择*时”,我正确地接收到了我的一行 现在我已经构建了一个小的PHP hello world页面,它连接到同一个数据库,并使用我打开的完全特权用户凭证。它提交相同的查询,但出于某种奇怪的原因,mysql\u num\u行始终为零 这是我使用的代码。请注意,加载网页时,我在网页上看到以下调试消息: success so far s
success so far
success so far 2
No Rows
以下是我使用的代码:
<?php
if (!$link = mysql_connect('localhost', 'testuser', 'testpw')) {
echo 'Could not connect to mysql';
exit;
}
if (!mysql_select_db('MYDB', $link)) {
echo 'Could not select database';
exit;
}
echo 'success so far<br>';
$sql = 'SELECT * FROM users';
$result = mysql_query($sql, $link) or die(mysql_error());
if (!$result) {
echo "DB Error, could not query the database\n";
echo 'MySQL Error: ' . mysql_error();
exit;
}
echo 'success so far 2<br>';
$countt = mysql_num_rows($result);
if($count>0)
{
echo "we have rows";
}
else
{
echo "No Rows";
}
while ($row = mysql_fetch_assoc($result)) {
echo $row['foo'];
}
mysql_free_result($result);
?>
如果有人指点我做错了什么,我将不胜感激。正如你所知道的,我是一个php新手
$countt
有两个t
if($count>0)
所以,
$count
是未定义的对于这样一个小的打字错误,只需发表评论并投票关闭即可。成功了。不知怎的错过了。这不是一种很好的调试方式。如果您使用类似于var\u dump($count)
的方法,您可能会很快发现错误。另外,如果您在开发环境中打开了PHP通知,并且在屏幕上显示错误或查看日志,您可能会看到一个关于$count
未定义的通知。您应该熟悉这些开发工具。另一个注意事项是,您不应该使用不推荐使用的mysql.*
函数。我建议您熟悉mysqli
或PDO
。