警告:mysql_num_rows() 期望参数 1 是资源,在第 189 行给出布尔值 [重复]

Posted

技术标签:

【中文标题】警告:mysql_num_rows() 期望参数 1 是资源,在第 189 行给出布尔值 [重复]【英文标题】:Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given on line 189 [duplicate] 【发布时间】:2016-12-02 11:28:16 【问题描述】:

我不知道为什么它一直告诉我

警告:mysql_num_rows() 期望参数 1 是资源,布尔值在 C:\Program Files (x86)\Easyphp-DevServer-14.1VC9\data\localweb\projects\kesedar\Sara_hidup_Rumusan_Tahunan.php 第 189 行中给出

这是我的代码:

$query_fasa =  mysql_query("SELECT kodfasa as fasa FROM peneroka_sda WHERE kodrancangan ='".$row_rancangan['kodrancangan']."' AND kodfasa!='' UNION SELECT fasa FROM kodfasa WHERE kodrancangan ='".$row_rancangan['kodrancangan']."' ORDER BY fasa ASC");
$count_fasa=mysql_num_rows($query_fasa);

【问题讨论】:

停止使用已弃用的mysql_* API。使用 mysqli_*PDOwithprepared statements 代替 【参考方案1】:

检查查询是否正确(输出查询并通过 MySQL 本身运行),还可以使用 mysql_error() 检查查询失败的原因。我建议你改用 MySQLi 或 PDO。

【讨论】:

我已经在我的代码中放入了 mysql_error() 并且它显示了这个错误:无效查询:非法混合排序规则 (latin1_swedish_ci,IMPLICIT) 和 (keybcs2_bin,IMPLICIT) 用于操作 'UNION' 您的表格使用不同的排序规则。 那么如何解决呢?? ***.com/questions/742205/…【参考方案2】:

首先,停止使用mysql_*,它们已被弃用。二、来自docs:

对于 SELECT、SHOW、DESCRIBE、EXPLAIN 和其他返回结果集的语句,mysql_query() 成功时返回资源,错误时返回 FALSE。

在 *** 上发帖之前,先学习阅读文档并自己弄清楚。我们都非常愿意提供帮助,但不会解决这些琐碎的问题。

【讨论】:

以上是关于警告:mysql_num_rows() 期望参数 1 是资源,在第 189 行给出布尔值 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

mysql_fetch_array()/mysql_fetch_assoc()/mysql_fetch_row()/mysql_num_rows 等...期望参数1是资源

警告:mysql_query() 期望参数 2 是资源 [重复]

警告问题:期望参数 1 为 mysqli_result [重复]

获取 PHP 错误警告:fputcsv() 期望参数 2 为数组

PHP 警告:in_array() 期望参数 2 是数组,字符串在

警告:mysqli_query() 期望参数 2 是字符串,对象在