织梦用dede:sql实现列表页分页方法
发布时间: 2020-09-10
121 人阅读
将dede:list标签进行改造,使用SQL标签实现静态分页,在自定义表单调用的分页用他就很方便
例如会员列表的模板标签写法
{dede:listsql sql=”select * from dede_member” pagesize=”10″}<li><a href=”[field:id runphp=yes][email protected];$url=GetOneArchive($id);@me=$url[‘arcurl’][/field:id]”><img src=”[field:litpic/]”>[field:XX /]</a></li>{/dede:listsql}<!–分页–>{dede:pagelist/}
- 实现教程
打开include/arc.listview.class.php 找到
if(!is_object($ctag)){$ctag = $this->dtp->GetTag(“list”);}
在下面加入
if(!is_object($ctag)){$ctag = $this->dtp->GetTag(“listsql”);if(is_object($ctag)){$cquery = $ctag->GetAtt(“sql”);//$cquery = str_replace(‘~reid~’,$this->ReID,$cquery); 这是另一个客户要求的获取url第2个参数才加的。$cquery = preg_replace(“/SELECT(.*?)FROM/is”, ” SELECT count(*) as dd FROM “, $cquery);$cquery = preg_replace(“/ORDER(.*?)SC/is”, “”, $cquery);$row = $this->dsql->GetOne($cquery);if(is_array($row)){$this->TotalResult = $row[‘dd’];}else{$this->TotalResult = 0;}}}
继续找到
else if($ctag->GetName()==”pagelist”)
在它上面加入
else if($ctag->GetName()==”listsql”){$limitstart = ($this->PageNo-1) * $this->PageSize;$row = $this->PageSize;if(trim($ctag->GetInnerText())==””){$InnerText = GetSysTemplets(“list_fulllist.htm”);}else{$InnerText = trim($ctag->GetInnerText());}$this->dtp->Assign($tagid,$this->GetSqlList($limitstart,$row,$ctag->GetAtt(“sql”),$InnerText));}
最后找到
function GetPageListST(
在它上面加入
function GetSqlList($limitstart = 0, $row = 10, $sql = ”, $innertext){global $cfg_list_son;$innertext = trim($innertext);if ($innertext == ”){$innertext = GetSysTemplets(‘list_fulllist.htm’);}//处理SQL语句$limitStr = ” LIMIT {$limitstart},{$row}”;$sql = str_replace(‘~reid~’,$this->ReID,$sql);$this->dsql->SetQuery($sql . $limitStr);$this->dsql->Execute(‘al’);$t2 = ExecTime();//echo $t2-$t1;$sqllist = ”;$this->dtp2->LoadSource($innertext);$GLOBALS[‘autoindex’] = 0;//获取字段while($row = $this->dsql->GetArray(“al”)){$GLOBALS[‘autoindex’]++;if(is_array($this->dtp2->CTags)){foreach($this->dtp2->CTags as $k=>$ctag){if($ctag->GetName()==’array’){//传递整个数组,在runphp模式中有特殊作用$this->dtp2->Assign($k,$row);}else{if(isset($row[$ctag->GetName()])){$this->dtp2->Assign($k,$row[$ctag->GetName()]);}else{$this->dtp2->Assign($k,”);}}}}$sqllist .= $this->dtp2->GetResult();}//while$t3 = ExecTime();//echo ($t3-$t2);$this->dsql->FreeResult(‘al’);return $sqllist;}
推广佣金:用户充值即可返最高20%的佣金(可提现), 即刻注册会员获取推广链接。
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!vip@mobanstar.com
2. 您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容资源!
3. 如果你也有好源码或者教程,可以到审核区发布,分享有金币奖励和额外收入!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7. 本站不保证所提供下载的资源的准确性、安全性和完整性,源码仅供下载学习之用!
8. 如用于商业或者非法用途,与本站无关,一切后果请用户自负!
9. 如遇到加密压缩包,默认解压密码为"www.mobanstar.com",如遇到无法解压的请联系管理员!
模板星 » 织梦用dede:sql实现列表页分页方法
2. 您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容资源!
3. 如果你也有好源码或者教程,可以到审核区发布,分享有金币奖励和额外收入!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7. 本站不保证所提供下载的资源的准确性、安全性和完整性,源码仅供下载学习之用!
8. 如用于商业或者非法用途,与本站无关,一切后果请用户自负!
9. 如遇到加密压缩包,默认解压密码为"www.mobanstar.com",如遇到无法解压的请联系管理员!
模板星 » 织梦用dede:sql实现列表页分页方法
常见问题FAQ
- 购买的模板是永久使用的嘛?需要授权码嘛?
- 凡是在模板星购买的模板/主题都是支持永久使用的,无需购买授权码,请用户放心购买使用。
- VIP模板提供安装服务嘛?需要收费嘛?
- 凡在模板星购买的模板/主题均可提供一次免费安装服务(需提供空间及数据库账号),请用户放心购买。
售后服务:
-
售后服务范围 1、商业模板使用范围内问题免费咨询 2、源码安装、模板安装(一般 ¥50-300)服务答疑仅限SVIP用户 3、单价超过200元的模板免费一次安装,需提供服务器信息。 付费增值服务 1、提供dedecms模板、WordPress主题模板优化等服务请详询在线客服 2、承接DedeCMS、 WordPress等系统建站、仿站、开发、定制等服务 3、服务器环境配置(一般 ¥50-300) 4、网站中毒处理(需额外付费,500元/次/质保三个月) 售后服务时间 周一至周日(法定节假日除外) 9:00-23:00 免责声明 本站所提供的模板(主题/插件)等资源仅供学习交流,若使用商业用途,请购买正版授权,否则产生的一切后果将由下载用户自行承担,有部分资源为网上收集或仿制而来,若模板侵犯了您的合法权益,请来信通知我们(Email:vip@mobanstar.com),我们会及时删除,给您带来的不便,我们深表歉意!