我正在尝试遵循此分页教程 http://www.phpfreaks.com/tutorial/basic-pagination将分页添加到我构建的搜索页面。本教程中的以下行:
$sql = "SELECT COUNT(*) FROM numbers";
我需要它根据与从小表单中提取的用户输入数据相匹配的行进行计数。这是我在尝试添加分页之前运行的工作查询
$raw_results = mysql_query("SELECT * FROM Pictures WHERE (`RimWidth` LIKE '%".$RimWidth."%') AND (`TyreWidth` LIKE '%".$TyreWidth."%') AND (`Aspect` LIKE '%".$Aspect."%') AND (`TyreDia` LIKE '%".$TyreDia."%') AND (`TyreMan` LIKE '%".$TyreMan."%')") or die(mysql_error());
我不确定如何添加它。我试过这个:
$sql = mysql_query("SELECT COUNT FROM Pictures WHERE (`RimWidth` LIKE '%".$RimWidth."%') AND (`TyreWidth` LIKE '%".$TyreWidth."%') AND (`Aspect` LIKE '%".$Aspect."%') AND (`TyreDia` LIKE '%".$TyreDia."%') AND (`TyreMan` LIKE '%".$TyreMan."%')") or die(mysql_error());
但它只是出错了。
我需要如何格式化查询?
最佳答案
您使用 COUNT
而不是 COUNT(表达式)
时出现错误,因此您必须更改查询,以便像第一个一样使用 SELECT COUNT(*)
你给出的例子。
编辑这就是获得准确计数的方法:
$query = "SELECT COUNT(*) FROM Pictures WHERE (`RimWidth` LIKE '%".$RimWidth."%') AND (`TyreWidth` LIKE '%".$TyreWidth."%') AND (`Aspect` LIKE '%".$Aspect."%') AND (`TyreDia` LIKE '%".$TyreDia."%') AND (`TyreMan` LIKE '%".$TyreMan."%')";
$result = mysql_query($query) or die(mysql_error());
$count = mysql_fetch_row($result);
关于php/mysql 分页 - 从多个字段计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20588561/