首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >几个警告[预期参数]

几个警告[预期参数]
EN

Stack Overflow用户
提问于 2015-09-19 16:41:52
回答 2查看 24关注 0票数 0

我一直在尝试使用这段代码显示行数,但它说

1行错误

代码语言:javascript
复制
<?php

            $link = mysql_connect("localhost", "gamin1_forum", "password123");
            mysql_select_db("gamin1_forumdb", $link);

            $result = mysql_query("SELECT COUNT(*) FROM smf_personal_messages", $link);
            $num_rows = mysql_num_rows($result);

            echo "$num_rows Rows";

            ?>

行数约为1443行,但仍为1行

EN

回答 2

Stack Overflow用户

发布于 2015-09-19 16:44:48

这是真的,mysql_num_rows()告诉我们返回了一个“行”。您需要检查返回行的值以获取计数。尝尝这个

代码语言:javascript
复制
$link = mysql_connect("localhost", "gamin1_forum", "password123");
$result = mysql_query("SELECT COUNT(*) as cnt FROM smf_personal_messages", $link);
$row = mysql_fetch_array($result);

echo ($row['cnt']);

另外,出于安全原因,您不应该使用mysql_*函数。尝试PDO/mysqli_*函数

票数 0
EN

Stack Overflow用户

发布于 2015-09-19 16:48:16

Count(*)返回一行,其中包含行数作为一个值。

通过使用mysql_num_rows($result),您实际上是在计算Count(*)结果的行数,它实际上是一个

将其更改为:

代码语言:javascript
复制
$result = mysql_query("SELECT * FROM smf_personal_messages", $link);
$num_rows = mysql_num_rows($result);

或者只使用mysql_fetch_arrayCount(*)值(这可能更好,因为它在DB中计数,而不是检索整个表)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32666137

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档