向数据库查询的结果始终为 "Resource id #3",可是数据库已经清空了,没有任何数据

数据库查询结果没有内容的时候应该显示“通讯录内还没有联系人”,但是却始终返回"Resourceid#3"没办法运行else<?php//MySQL服务器地址$host="... 数据库查询结果没有内容的时候应该显示“通讯录内还没有联系人”,但是却始终返回"Resource id #3"没办法运行 else
<?php
//MySQL 服务器地址
$host = "localhost:3306";
//MySQL 用户名
$user = "root";
//MySQL 密码
$pass = "root";
//要使用的数据库
$dbname = "addbook";
//建立与数据库的连接
$id = mysql_connect($host, $user, $pass);
//使用utf8编码
mysql_query("set names utf8");
//选择数据库
mysql_select_db($dbname);

//执行 SQL 查询,读出用户表
$sql = "select * from addressbook where userID > 0 order by userID";
echo "通讯录 <a href=add.php>添加联系人</a>";
$result = mysql_query($sql);

if ($result)
{//循环显示每个联系人资料
echo $result; //这里始终显示"Resource id #3"
echo "<table><tr><td>姓名</td><td>性别</td><td>电子邮件</td><td>出生日期</td><td>单位</td><td>地址</td><td>邮编</td><td>MSN</td><td>QQ</td><td>工作电话</td><td>家庭电话</td><td>手机</td><td>操作</td></tr>";

while ($row = mysql_fetch_array($result))
{
echo "<tr><td>" . $row['name'] . "</td><td>" . ($row['sex'] == 1 ? "男" : ($row['sex'] == 2 ? "女" : "")) . "</td><td>" . $row['email'] . "</td><td>" . $row['birthday'] . "</td><td>" . $row['unit'] . "</td><td>" . $row['address'] . "</td><td>" . $row['msn'] . "</td><td>" . $row['qq'] . "</td><td>" . $row['office_phone'] . "</td><td>" . $row['home_phone'] . "</td><td>" . $row['mobile_phone'] . "</td><td><a href='edit.php?userID=" . $row['userID'] . "'>编辑</a><a href='del.php?userID=" . $row['userID'] . "'>删除</a></td></tr>";
}
echo "</table>";
}
else
{//没有有效记录
echo "<p>通讯录内还没有联系人!</p>";
}
?>
展开
 我来答
golin000
推荐于2017-11-27 · TA获得超过1801个赞
知道小有建树答主
回答量:735
采纳率:0%
帮助的人:447万
展开全部
基本上
"Resource id #3"是你使用$id = mysql_connect($host, $user, $pass);其中的连线id
这个问题很常出现在PHP_MySQL里
即便是你使用mysql_error()也不会判定为错误
至于为何会如此...其实原因很复杂
建议不要使用mysql_fetch_array的结果作判定依据
最好的方法是使用mysql_num_rows($result)来判定你的query内容是否有资料
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式