求问一个很迷惑的php mysql count()函数用法

mysqlshell里输入:selectcount(id)fromtable。之后可以显示20条记录,想要的php文件里这样写:$mynum=mysql_query('s... mysql shell里输入:select count(id) from table。之后可以显示20条记录,想要的
php文件里这样写:$mynum=mysql_query('select count(id) from table');
echo $mynum;
按照思路应该也输出20呀,为什么输出:Resource id #41

而这样写:$query = mysql_query("select count(id) as num from table ");
$row = mysql_fetch_array($query);
echo $row['num'].'<br>';
却可以得到20;求详解....
展开
 我来答
周梦康
推荐于2018-04-12 · TA获得超过170个赞
知道小有建树答主
回答量:176
采纳率:100%
帮助的人:157万
展开全部

mysql_query 的返回值不是查询出来的结果的条数,而是返回本次查询是否成功。

如果失败则返回flase 用来做判断,例如下面的用法:

$res=mysql_query($sql);
if ($res){
    $row=mysql_fetch_array($res);
}

撸主在学习的过程中,需要多多注意每个函数的返回值。多看手册

百度网友fa7d405
2013-05-14 · TA获得超过549个赞
知道小有建树答主
回答量:1044
采纳率:100%
帮助的人:282万
展开全部
mysql_query() 仅对 SELECT,SHOW,EXPLAIN 或 DESCRIBE 语句返回一个资源标识符,如果查询执行不正确则返回 FALSE。
你用的是SELECT语句,所以返回的是资源标识符,所以echo出来是Resource

mysql_fetch_array() 函数从结果集中取得一行作为关联数组,或数字数组,或二者兼有
返回根据从结果集取得的行生成的数组,如果没有更多行则返回 false。
所以echo $row['num']能得到具体值

详见php手册
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
gongkai1985
2013-05-14 · TA获得超过226个赞
知道小有建树答主
回答量:246
采纳率:100%
帮助的人:168万
展开全部
select 得出来的是一个结果集哦,
mysql_fetch_array—从结果集中取得一行作为关联数组,或数字数组
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友8dce392c02
2013-05-14 · TA获得超过1099个赞
知道小有建树答主
回答量:587
采纳率:66%
帮助的人:312万
展开全部
这个已经提示 了 Resource id #41

mysql_query 得到的是一个 资源型变量 不是数字 也不是字符串
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式