您的位置:首页 > 数据库 > MySQL

织梦dedecms模板中运行php代码和mysql语句总结

2017-08-25 13:25 543 查看
前言
我们在开发织梦模板时,有时需要对当前调用的一些数据做一些修改或者调整。就需要用利用php语言来对所得数据进行一些处理。同时也会用到用sql语句直接在数据库中调用相关数据。岛主总结了一下在模板中运行php代码和mysql语句的方法。

具体方法
1、在织梦模板中运行php代码

   方式一:

{dede:name runphp='yes'}
$str = "hello ";
@me = $str;
@me .= "Daozhu";
{/dede:name}

<!-- name 为内容模板页可调用字段。如title、typeid、body等。任何一个都可以。@me 表示当前的值,也就是要输出最后一个@me的值。 -->

  输出结果:hello Daozhu

  说明:"name"为任意定义的名字,@me 表示当前的值,也就是要输出最后一个@me的值。

  方式二:

{dede:field runphp='yes'}
$str = "world";
$DedeMeValue="hello ";
$DedeMeValue .= $str;
{/dede:field}

   输出结果:hello world

   说明:如果直接引入PHP并要获得运行后的值,必须用 $DedeMeValue 表示运行这个PHP后最终返回的值(因此不能用HTML混合的写法)

  方式三:

{dede:list perpage='10'}
[field:id runphp="yes"]
$dsql = new DedeSql(false);
$a="select a.address FROM dede_addonarticle as a where a.aid=@me";
$arcRow = $dsql->GetOne($a);
@me=''.$arcRow[address].'';
[/field:id]
{/dede:list}

2、引用php文件(在网上看到的,没有亲自试验)

    如果你想在include的文件中使用PHP,则加上 source='value'

    {dede:include runphp='yes' source='value' file=''/}

3、dede运行mysql语句

   方式一:

{dede:sql sql="SELECT COUNT(*) AS nums FROM dede_addona
4000
rticle"}
[field:name = "nums"/]
{/dede:sql}

   说明:输出的就是dede_addonarticle表的nums字段的值,查询出几条就输出几次

    方式二

{dede:sql sql="SELECT * FROM dede_archives WHERE writer=~writer~"}
[field:id/]
{/dede:sql}

   说明:~writer~为变量。如,在内容页模版中,调用的是a表,a表中有字段writer=xc,那么上面那条语句在这个内容页模板中就相当于SELECT * FROM dede_archives WHERE writer='xc',[field:id/]就是数据库dede_archives中的id字段。

原文链接:织梦dedecms模板中运行php代码和mysql语句总结
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息