您的当前位置:首页正文

mysql_num_rows()

2023-11-10 来源:帮我找美食网

使用 mysql_num_rows 可以取得结果集中行的数目。mysql_num_rows() 返回结果集中行的数目。此命令仅对 SELECT 语句有效。要取得被 INSERT,UPDATE 或者 DELETE 查询所影响到的行的数目,用 mysql_affected_rows()。用法如下:首先使用 mysql_query() 通过 SQL 语句获得结果集,然后再用 mysql_num_rows() 获得数据库的记录行数。1<?php2$count = mysql_num_rows( mysql_query("select * from article where category = ‘php‘ ") );3?>如果 SQL 语句比较长,也可以将 SQL 语句赋给一个变量,如下代码所示:1<?php2$link = mysql_connect("localhost", "mysql_user", "mysql_password");3mysql_select_db("database", $link);4$result = mysql_query("select * from table1", $link);5$num_rows = mysql_num_rows($result);6?>$result 就是查询数据库之后的结果集。再举一个例子view sourceprint?01<?php02$con = mysql_connect("localhost", "hello", "321");03if (!$con)04 {05 die(‘Could not connect: ‘ . mysql_error());06 }07$db_selected = mysql_select_db("test_db",$con);08$sql = "SELECT * FROM person";09$result = mysql_query($sql,$con);10echo mysql_num_rows($result);11mysql_close($con);12?>

 

mysql_num_rows()

标签:

小编还为您整理了以下内容,可能对您也有帮助:

PHP查询语句,如何返回总记录数??

    PHP查询语句,有两种方法获得查询的总记录数。

    一是使用mysql_num_rows函数,例子代码:

<?php

$link = mysql_connect("localhost", "mysql_user", "mysql_password");

mysql_select_db("database", $link);

$result = mysql_query("SELECT * FROM table1", $link);

$num_rows = mysql_num_rows($result);

echo "$num_rows Rowsn";

?>

    二是修改查询语句,使用COUNT(*)作为查询内容,例子代码:<?php

$link = mysql_connect("localhost", "mysql_user", "mysql_password");

mysql_select_db("database", $link);

$result = mysql_query("SELECT COUNT(*) FROM table1", $link);

list($num_rows) = mysql_fetch_row($result);

echo "$num_rows Rowsn";

?>

mysql_num_rows() expects paramater 1 to be resource

SQL语句错了,你放到phpmyadmin中试一下,有没有问题

很明显啊,第一个查询的SQL语句错误,造成返回的结果不是MYSQL资源,所以mysql_num_rows无法正常解析。

mysql_num_rows() expects paramater 1 to be resource

意思是说这个函数希望得到的第一个参数是一个资源

因为你的SQL语句错误,返回的不是资源了!追问我已经把

$sql="select * from 'user' where account ='$uname'";

改成了

$sql="select * from user where account ='$uname'";

可以写入数据库,但是还是有那个提示。

如何在PHP中获取MYSQL数据库返回的数据的行数?31

1、首先打开MYSQL的管理工具,新建一个test表,并且在表中插入两个字段。

2、接下来在Editplus编辑器中创建一个PHP文件,然后进行数据库连接,并且选择要操作的数据库。

3、然后通过mysql_query方法执行一个Insert的插入语句。

4、执行完毕以后,我们回到数据库管理工具中,这个时候你会发现插入的中文乱码了。

5、接下来我们在PHP文件中通过mysql_query执行一个set  names  utf8语句即可完成操作。

如何在PHP中获取MYSQL数据库返回的数据的行数?31

1、首先打开MYSQL的管理工具,新建一个test表,并且在表中插入两个字段。

2、接下来在Editplus编辑器中创建一个PHP文件,然后进行数据库连接,并且选择要操作的数据库。

3、然后通过mysql_query方法执行一个Insert的插入语句。

4、执行完毕以后,我们回到数据库管理工具中,这个时候你会发现插入的中文乱码了。

5、接下来我们在PHP文件中通过mysql_query执行一个set  names  utf8语句即可完成操作。

php+MySQL查询 mysql_num_rows总是返回0,实际上有数据。

据我所知 应该是游标定位不对把 你seek一下 给你个例子
$mysql_server_name="localhost"; //数据库服务器名称
$mysql_username="root"; // 连接数据库用户名
$mysql_password="root"; // 连接数据库密码
$mysql_database="db_admin"; // 数据库的名字

// 连接到数据库
$conn=mysql_connect($mysql_server_name, $mysql_username,
$mysql_password)or die("Sorry connect error");

// 从表中提取信息的sql语句
$strsql="select * from tb_admin";
// 执行sql查询
$result=mysql_db_query($mysql_database, $strsql, $conn);
// 获取查询结果
$row=mysql_fetch_row($result);

echo '<font face="verdana">';
echo '<table border="1" cellpadding="1" cellspacing="2">';

// 显示字段名称
echo "\n<tr>\n";
for ($i=0; $i<mysql_num_fields($result); $i++)
{
echo '<td bgcolor="#000F00"><b>'.
mysql_field_name($result, $i);
echo "</b></td>\n";
}
echo "</tr>\n";
// 定位到第一条记录
mysql_data_seek($result, 0);
// 循环取出记录
while ($row=mysql_fetch_row($result))
{
echo "<tr>\n";
for ($i=0; $i<mysql_num_fields($result); $i++ )
{
echo '<td bgcolor="#00FF00">';
echo "$row[$i]";
echo '</td>';
}
echo "</tr>\n";
}

echo "</table>\n";
echo "</font>";
// 释放资源
mysql_free_result($result);
// 关闭连接
mysql_close();

php+MySQL查询 mysql_num_rows总是返回0,实际上有数据。

据我所知 应该是游标定位不对把 你seek一下 给你个例子
$mysql_server_name="localhost"; //数据库服务器名称
$mysql_username="root"; // 连接数据库用户名
$mysql_password="root"; // 连接数据库密码
$mysql_database="db_admin"; // 数据库的名字

// 连接到数据库
$conn=mysql_connect($mysql_server_name, $mysql_username,
$mysql_password)or die("Sorry connect error");

// 从表中提取信息的sql语句
$strsql="select * from tb_admin";
// 执行sql查询
$result=mysql_db_query($mysql_database, $strsql, $conn);
// 获取查询结果
$row=mysql_fetch_row($result);

echo '<font face="verdana">';
echo '<table border="1" cellpadding="1" cellspacing="2">';

// 显示字段名称
echo "\n<tr>\n";
for ($i=0; $i<mysql_num_fields($result); $i++)
{
echo '<td bgcolor="#000F00"><b>'.
mysql_field_name($result, $i);
echo "</b></td>\n";
}
echo "</tr>\n";
// 定位到第一条记录
mysql_data_seek($result, 0);
// 循环取出记录
while ($row=mysql_fetch_row($result))
{
echo "<tr>\n";
for ($i=0; $i<mysql_num_fields($result); $i++ )
{
echo '<td bgcolor="#00FF00">';
echo "$row[$i]";
echo '</td>';
}
echo "</tr>\n";
}

echo "</table>\n";
echo "</font>";
// 释放资源
mysql_free_result($result);
// 关闭连接
mysql_close();

php中若想获得数据库某个表中的记录条数用什么函数?

就是一个数啊。。。。他会返回一个结果集,其中就有一个字段
叫count(id)
里边就一条数据,就是这个表中的所有数据总数。。。

php中若想获得数据库某个表中的记录条数用什么函数?

就是一个数啊。。。。他会返回一个结果集,其中就有一个字段
叫count(id)
里边就一条数据,就是这个表中的所有数据总数。。。

php5 mysql5 登录程序 $num_rows 返回为什么是0行 明明数据库中有数据的

楼主,PHP5默认全局变量是关闭的,所以你要引用上个页面传来的变量值,只能用$_POST、$_GET等数组接收,所以你这一行

if ($username && $password){

就开始出现漏洞了,$username 和 $password 的值是不能得到的,它们一定为空,所以if下面的语句不能执行,$num_rows = mysqli_num_rows($result)之后,$num_rows 永远都是0。改为if($_POST['username'] && $_POST['password'])就可以了。

你这句$result = mysqli_query($link,$query) or die("Query failed : " );

应该这么写:$result = mysqli_query($query,$link) or die("Query failed : " ); 参数应该先$query后$link

还有,你的程序逻辑还不完整,有了if,怎么没有else ?

Mysql里面默认排序是降序吗?

Mysql里面默认排序是升序。ORDER BY 子句若未显式指定升序(ASC)或降序(DESC),那么就认按默认升序排序。

Mysql里面默认排序是降序吗?

Mysql里面默认排序是升序。ORDER BY 子句若未显式指定升序(ASC)或降序(DESC),那么就认按默认升序排序。

小弟刚刚接触PHP,请高手解释一下为啥mysql_num_rows($result)老是为0?

追问老师,把它放入到数据库查寻,有数据,sql语句也能打印出来了,而且我的删除,修改,查询都失败,数据库链接正常,PHP版本5 dw5

追答$sql 打印出来的东西放到数据库执行看看

我的数据库明明有9条信息,为什么用mysql_num_rows查询时只有6条 - 技术问答

请使用phpmyadmin之类的软件查看下数据表的记录,如果真的是9条的话,请检查你的sql查询语句,如果有条件附加,请检查你的条件书写的是否正确。如果都没有错误,那么最后得到的数目应该是一致的。

Top