我想计算行和打印php echo。但当我回显查询时,它显示:资源ID#5。但它必须只显示5号。
<?php
$db=require "script_database/connect.php";
$query="select count(name) from selection where salary>2000 and job='teacher' ";
$key=mysql_query($query);
echo $key;
if(key>0)
{
echo "no row found";
}
?>
答案 0 :(得分:4)
mysql_query
将返回已执行查询的资源,而不是数据。你必须拿它 -
$query="select count(name) from selection where salary>2000 and job='teacher' ";
$result=mysql_query($query);
$key = mysql_fetch_array($result);
echo $key['count(name)'];
现在不推荐使用mysql。请改用mysqli或PDO。
<强>返回强>
对于SELECT,SHOW,DESCRIBE,EXPLAIN和其他返回结果集的语句,mysql_query()会在成功时返回资源,或者在出错时返回FALSE。
对于其他类型的SQL语句,INSERT,UPDATE,DELETE,DROP等,mysql_query()成功时返回TRUE,错误时返回FALSE。
返回的结果资源应该传递给mysql_fetch_array(),以及其他用于处理结果表的函数,以访问返回的数据。
使用mysql_num_rows()查找为SELECT语句或mysql_affected_rows()返回的行数,以找出DELETE,INSERT,REPLACE或UPDATE语句影响的行数。
如果用户没有访问查询引用的表的权限,mysp_query()也将失败并返回FALSE。
答案 1 :(得分:-3)
您可能必须使用mysql_num_rows
$query = "Select * from selection where salary>2000 and job='teacher'"
echo mysql_num_rows($query);