来源:未知 时间:2015-08-26 14:19 作者:xxadmin 阅读:次
[导读] 本教程讲解dedecms {dede:sql}标签用法详解 功能说明:用于从模板中用一个SQL查询获得其返回内容 适用范围:全局使用 基本语法: {dede:sqlsql=}底层模板{/dede:sql} 调用列表 {dede:sqlsql=select*...
本教程讲解dedecms {dede:sql}标签用法详解 功能说明:用于从模板中用一个SQL查询获得其返回内容 适用范围:全局使用 基本语法:
{dede:sql sql=""}底层模板{/dede:sql} 调用列表
{dede:sql sql="select * From dede_archives limit 10"} <li>·<a href="/plus/view.php?aid=[field:id/]">[field:title/]</a></li> {/dede:sql}
1.调用某个特定会员发布的文章内容
{dede:sql sql='Select * from dede_archives where mid=1'} <a href='/plus/view.php?aid=[field:id/]' target='_blank'>[field:title/]</a> {/dede:sql} mid为用户ID可以参考二次开发中关于dede_archives的数据表字段介绍 下面我们再来详细的看看{dede:sql}标签其它实例
<div class="hot mt1"> <dl class="tbox"> <dt><strong>⊙下载排行</strong></dt> <dd> <ul class="c1 ico2">{dede:sql sql="select a.id as aid,a.typeid,a.title,a.pubdate,d.id as did,d.downloads from mo_archives as a,mo_downloads as d where a.id = d.id and a.arcrank=0 and a.typeid!= 15 and a.typeid != 44 and (UNIX_TIMESTAMP()-a.pubdate)/3600/24 BETWEEN 0 AND 15 order by d.downloads desc limit 0,10;"} <li> <a title="[field:title /]" href="[field:aid function=GetinfoUrl(@me,10) /]">[field:title function='cn_substr(@me,26)'/]</a> -下载数:<font color='red'>[field:downloads/]</font></li> {/dede:sql} </ul> </dd> </dl> </div> 首页调用文章正文内容,比较好的解决方法: 方法一:
{dede:sql sql="SELECT aid,typeid,body,body1,body2,body3,body4,body5 FROM `dede_addonarticle` where typeid=2 ORDER BY `aid` DESC LIMIT 0,1"} [field:body /] [field:body1 /] [field:body2 /] [field:body3 /] [field:body4 /] [field:body5 /] {/dede:sql} 方法二:
{dede:sql sql="SELECT aid,typeid,body FROM `dede_addonarticle` where typeid=2 ORDER BY `aid` DESC LIMIT 0,1"} [field:body /] {/dede:sql} 调用说明: 其中typeid=2,栏目ID号,表示调用此ID栏目内的文章,换成 aid=1 则表示调用的 aid 为 1 的文章, DESC 表示排序,按从大到小排,换成 ASC 则按从小到大排序, LIMIT 0,1 表示调用数量,也可以写成数量LIMIT 1,这个1代表调用的数量。 dede sql 标签 取出来的列表 实现分页
{dede:php} //获取当前页数 if(isset($_GET['page'])){ $page = intval($_GET['page']); } else { $page=1; } $PageSize = 3; //每页的记录数量 // 获取总数量 $sql = “SELECT count(*) FROM js_archives WHERE writer = ‘开发建设科’”; $result = mysql_query($sql); $row = mysql_fetch_row($result); $amount = $row[0]; /*计算总页数 if($amount){ if($amount<$PageSize) { $PageCount = 1; } if($amount%$PageSize) { //总数量除以每页的记录数量取于 $PageCount =& amp;nbsp;(int)($amount/$PageSize)+1;//如果有于,则页数等于总数量除每页的记录数加1 } else{ $PageCount =& amp;nbsp;$amount/$PageSize;//没有,则结果是页数 } } else{ $PageCount = 0; }*/ $PageCount = ceil($amount/$PageSize);//总页数=总数量除以每页数量 如果有小树,则进位< span style=”color: #008000;”> if($Page>$PageCount|$page==0){// 如果当前页数大于总页数 echo “不能发现此页!”; exit(); } //翻页链接 $PageOut = ”; if($page==1){//如果页数只有一页 $PageOut .= ‘第一页|上一页’; } else{ $PageOut .= ‘<a href=”/plus/list.php?tid=30&page=1″>第一页</a>|<a href=”/plus/list.php?tid=30&page=’.($page-1).’”>上一页</a>|’; } if($page==$PageCount||$PageCount==0){//如果当前页等于总也数 $PageOut .= ‘下一页|尾页’; } else{ $PageOut .= ‘<a href=”/plus/list.php?tid=30&page=’.($page+1).’”>下一页</a>|<a href=”/plus/list.php&tid=30?page=’.$PageCount.’”>尾页</a>’; } //获取数据 if($amount){ $sql=”select * FROM js_archives WHERE writer = ‘开发建设科’ limit “.($page-1)*($PageSize).”,$PageSize”; $result=mysql_query($sql); while($row=mysql_fetch_array($result)){//此段代码只是示例 $blogs[] = array(‘id’=>$row['id'],’title’=>$row['title']); foreach ($blogs as $blog){ $title=$blog['title']; $id=$blog['id']; echo <<< EOT <tr><td width=”550″><p><a href=’/plus/view.php?aid=$id’ target=’_blank’>$title</a></td></tr> EOT; unset($blogs); } } for($i=1;$i<=$PageCount;$i++){//数字分页 $Pageshow = ($i!=$page)?”<a href=’/plus/list.php?tid=30?page=”.$i.”‘>$i</a>”:”<b>$i</b>”; echo $PageShow; } echo $amount.’条记录,每页’.$PageSize.’条,共’.$PageCount.’页’; } echo $PageOut; {/dede:php} 根据自己的情况 把SQL写上 然后把 list.php 里的 if($lv->IsError) { //ParamError(); } |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com