muban大师 发表于 2020-11-9 11:20:45

让dede运行php代码和mysql语句

一、dede运行php代码
       
        举例1:
       
        {dede:name runphp='yes'}
        $str = "hello ";
        @me = $str;
        @me .= "world";
        {/dede:name}
       
        结果:hello world
       
        说明:"name"为任意定义的名字,@me 表示当前的值,也就是要输出最后一个@me的值。
       
       
       
        举例2
       
        {dede:field runphp='yes'}
        $str = "world";
        $DedeMeValue="hello ";
        $DedeMeValue .= $str;
        {/dede:field}
       
        结果:hello world
       
        说明:如果直接引入PHP并要获得运行后的值,必须用 $DedeMeValue 表示运行这个PHP后最终返回的值(因此不能用HTML混合的写法)
       
       
       
        举例3
       
        {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}
       
       
        二、引用php文件(在网上看到的,没有亲自试验)
       
        如果你想在include的文件中使用PHP,则加上 source='value'
       
        {dede:include runphp='yes' source='value' file=''/}
       
        三、 dede运行mysql语句
       
        举例1
       
        {dede:sql sql="SELECT COUNT(*) AS nums FROM dede_addonarticle"}
       
        {/dede:sql}
       
        输出的就是dede_addonarticle表的nums字段的值,查询出几条就输出几次
       
        举例2
       
        {dede:sql sql="SELECT * FROM dede_archives WHERE writer=~writer~"}
       
        {/dede:sql}
       
        说明:~writer~为变量。如,在内容页模版中,调用的是a表,a表中有字段writer=xc,那么上面那条语句在这个内容页模板中就相当于SELECT * FROM dede_archives WHERE writer='xc',就是数据库dede_archives中的id字段
页: [1]
查看完整版本: 让dede运行php代码和mysql语句