PHPCMS企业黄页2008分页问题
我用以下方式求平均数
{get sql="SELECT DISTINCT c.*,
(select round(avg(sort1)) from `phpcms_yp_dp` where userid=c.userid) avgsort1,
(select round(avg(avgprice)) from `phpcms_yp_dp` where userid=c.userid) avgprice
FROM `phpcms_member_company` `c`,`phpcms_yp_relation` `r`
WHERE c.userid = r.userid AND $where
ORDER BY avgprice DESC" rows="$pagesize" page="$page"
urlrule="$M[url]company.php?pagesize=$pagesize&listtype=$listtype&areaname=$areaname&catid=$catid|$M[url]company.php?pagesize=$pagesize&listtype=$listtype&areaname=$areaname&catid=$catid&page=\\$page"
distinctfield="\c.userid"}将出现如下错误
MySQL Query : SELECT COUNT(distinct c.userid) AS `count` from `yehsow_yp_dp` where userid=c.userid) avgsort1, (select round(avg(avgprice)) from `yehsow_yp_dp` where userid=c.userid) avgprice FROM `yehsow_member_company` `c`,`yehsow_yp_relation` `r` WHERE c.userid = r.userid AND c.status = '1' ORDER BY avgprice DESC
MySQL Error : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') avgsort1, (select round(avg(avgprice)) from `yehsow_yp_dp` where userid=c.us' at line 1
MySQL Errno : 1064
Message : MySQL Query Error当我把分页page="$page"删除没错误,正常显示按照如下方式却不能分页
{get sql="SELECT DISTINCT c.*,round(AVG(d.sort1)) avgsort1,round(AVG(d.sort2)) avgsort2,round(AVG(d.sort3)) avgsort3,round(AVG(d.sort4)) avgsort4,round(AVG(d.sort5)) avgsort5,round(AVG(d.avgprice)) avgprice
FROM `phpcms_member_company` `c`,`phpcms_yp_dp` `d`,`phpcms_yp_relation` `r`
WHERE c.userid = d.userid = r.userid AND $where
GROUP BY c.userid ORDER BY c.userid desc" rows="$pagesize" page="$page"
urlrule="$M[url]company.php?pagesize=$pagesize&listtype=$listtype&areaname=$areaname&catid=$catid&page=\\$page"
distinctfield="\c.userid"}
我用以下方式求平均数
{get sql="SELECT DISTINCT c.*,
(select round(avg(sort1)) from `phpcms_yp_dp` where userid=c.userid) avgsort1,
(select round(avg(avgprice)) from `phpcms_yp_dp` where userid=c.userid) avgprice
FROM `phpcms_member_company` `c`,`phpcms_yp_relation` `r`
WHERE c.userid = r.userid AND $where
ORDER BY avgprice DESC" rows="$pagesize" page="$page"
urlrule="$M[url]company.php?pagesize=$pagesize&listtype=$listtype&areaname=$areaname&catid=$catid|$M[url]company.php?pagesize=$pagesize&listtype=$listtype&areaname=$areaname&catid=$catid&page=\\$page"
distinctfield="\c.userid"}将出现如下错误
MySQL Query : SELECT COUNT(distinct c.userid) AS `count` from `yehsow_yp_dp` where userid=c.userid) avgsort1, (select round(avg(avgprice)) from `yehsow_yp_dp` where userid=c.userid) avgprice FROM `yehsow_member_company` `c`,`yehsow_yp_relation` `r` WHERE c.userid = r.userid AND c.status = '1' ORDER BY avgprice DESC
MySQL Error : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') avgsort1, (select round(avg(avgprice)) from `yehsow_yp_dp` where userid=c.us' at line 1
MySQL Errno : 1064
Message : MySQL Query Error当我把分页page="$page"删除没错误,正常显示按照如下方式却不能分页
{get sql="SELECT DISTINCT c.*,round(AVG(d.sort1)) avgsort1,round(AVG(d.sort2)) avgsort2,round(AVG(d.sort3)) avgsort3,round(AVG(d.sort4)) avgsort4,round(AVG(d.sort5)) avgsort5,round(AVG(d.avgprice)) avgprice
FROM `phpcms_member_company` `c`,`phpcms_yp_dp` `d`,`phpcms_yp_relation` `r`
WHERE c.userid = d.userid = r.userid AND $where
GROUP BY c.userid ORDER BY c.userid desc" rows="$pagesize" page="$page"
urlrule="$M[url]company.php?pagesize=$pagesize&listtype=$listtype&areaname=$areaname&catid=$catid&page=\\$page"
distinctfield="\c.userid"}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货