当前位置:织梦97 > 织梦教程 > 织梦实战 > DedeCMS织梦模板使用扩展函数调用任意数据表的教程

DedeCMS织梦模板使用扩展函数调用任意数据表的教程

发布人:织梦97 时间:2018-09-11 人气:1160

好消息:现在购买商业模板赠送银牌会员(一元送一天)。同时承接各类网站编辑制作、仿站业务,详情联系右边客服。织梦仿站、织梦安装、修改、安全处理、疑难解决、PHP网站开发、网页设计、改版、点击这里

织梦系统有一个extend.func.php文件,我们可以在里面写上自定义函数来实现自己想要的功能,比如今天我们要实现扩展函数来调用Dede的任意一个数据表的内容。

首先修改/include/extend.func.php,里面的把这段代码加进去:


//自定义函数调用数据表    
    function table($table, $field, $id)
      {
      global $dsql;
      $primarys = array();
      $table = strpos($table, '#@_') === false?(strpos($table, 'dede_') === false?'dede_'.$table:str_replace('dede_','dede_',$table)):$table;
      $dsql -> Execute("me","SHOW COLUMNS FROM `$table`");
      while ($r = $dsql->GetArray())
      {
          if($r['Key'] == 'PRI') $primarys[] = $r['Field'];
              }
          if(!empty($primarys))
              {
          $primary = $primarys[0];
          $result = $dsql -> GetOne("SELECT `$field` FROM `$table` WHERE `$primary`= $id");
              }
            return isset($result[$field])?$result[$field]:$result[$field];
          }
 

然后在我们需要调用数据的地方加上调用代码:


{dede:field.字段 function='table("要调用的数据表","要调用的字段",@me)'/} //内容页,首页调用代码
[field:字段 function='table("要调用的表名","要调用的字段",@me)'/] //列表页频道页调用代码
 

举例说明:


{dede:field.id function='table("dede_addonarticle","body",@me)'/}
 

释义:调用id为本文id的文章的body部分。

暂无评论!
用户: 密码: 验证: 点击获取 注册
验证: 点击获取