以下代码有效:
$cond=" and (country like '%$location%' or state like '%$location%') ";
$q = mysql_query("select $fields from $table $cond LIMIT ".$this->offset.", ".$this->rowsPerPage);
$q2 = mysql_query("select $fields from $table $cond ");
$this->numrows = mysql_num_rows($q2);
$paging = new Paging();
$paging->rowsPerPage=10;
$q = $paging->sql("*","table1","where status ='1' $cond order by id desc ");
table1 =
1我们
2-ES
3-它
4-UK
table2 =
名称 - 异
美国 - 我们
意大利-它
英国 - 英国
西班牙-ES
在搜索中,这会找到“我们”而不是“美国” 我试图加入表但得到错误:
$cond=" JOIN table2 ON table2.iso=table1.country and (name like '%$location%' or country like '%$location%' or state like '%$location%' ) ";
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in
有人可以帮忙吗? 谢谢!
答案 0 :(得分:0)
那是因为mysql_query有时会返回boolean false(查询错误)。你需要检查一下:
尝试检查查询..天气它在mysql查询浏览器中工作。
$q2 = mysql_query("select $fields from $table $cond ");
if($q2 === false) {
var_dump(mysql_error());
}
else {
print_r(mysql_num_rows($q2));
}
上面的代码写得很糟糕并且已弃用。在实际项目中使用PDO和例外。