很多站长朋友们都不太清楚dede运行php文件,今天小编就来给大家整理dede运行php文件,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 在织梦的自定义模板文件里怎么添加php文件? 2、 DEDE标签放在.php文件里不生成,能否直接使用? 3、 dede:php无法执行,在线等急。 4、 DedeCMS使用技巧:如何做目录执行php脚本限制方法 5、 之前织梦后台用的php版本是5.2的新的服务器php版本是5.3.的现在后台打开空白,要怎么解决啊 6、 discuz7.2模板里面怎么运行php 在织梦的自定义模板文件里怎么添加php文件?第一步:打开"/include/common.func.php",
然后在该文件中加入一个函数,代码如下:
function pasterTempletDiy($path)
{
require_once(DEDEINC."/arc.partview.class.php");
global $cfg_basedir,$cfg_templets_dir;
$tmpfile = $cfg_basedir.$cfg_templets_dir."/".$path;//模版文件的路径
$dtp = new PartView();
$dtp->SetTemplet($tmpfile);
$dtp->Display();
}
第二步,加上上面的函数之后,也就可以调用主站下的/templets/default/所有模板文件,比如要在问答模块的主页调用主站的随机文章,可以在主站 模板/templets/default/下新建一个head.htm文件,然后在head.htm里面加入你需要的标签和标签属性:
{dede:arclist titlelen='100' row='15' orderby='rand'}
<li><a href="[field:arcurl/]" title="[field:title/]">[field:title/]</a></li>
{/dede:arclist}
第三部,自定义yourfile.php文件,内容如下
<?php
require_once("include/common.inc.php");
?>
想读取公共文件,如:{dede:include filename=''head.htm/}就使用<?php pasterTempletDiy("cdqx/head.htm");?>
完成。
DEDE标签放在.php文件里不生成,能否直接使用?dede的模板文件一般是htm的,在php程序中不能使用标签吧。不过你在模板中可以写php代码但是得用{dede:php}{/dede:php}这样的。像你用sql语句,你就可以这样。如果要显示什么直接用php代码了。php里面就不要用标签了。直接循环或者echo 出来就可以了。
dede:php无法执行,在线等急。您要确认,您是否认真仔细地完成了如下二步:
第一步:网站后台——系统——系统基本参数——其他选项——模板引擎禁用标签:删除其中的“php”。
做完这一步,问题一般得到解决。如果未解决,则执行第二步。
第二步:在SQL命令行中依次执行如下命令。一般用phpmyadmin中的mysql命令比较方便。
INSERT INTO `dede_sysconfig` (`varname`, `info`, `groupid`, `type`, `value`) VALUES ('cfg_disable_funs', '模板引擎禁用PHP函数', 7, 'bstring', 'phpinfo,eval,exec,passthru,shell_exec,system,proc_open,popen,curl_exec,curl_multi_exec,parse_ini_file,show_source,file_put_contents');
注意:SQL命令行中复制我上面打的,不要复制其他的,因为有些网页排版可能有问题。更不能自己对着屏幕打,因为单引号有两种,容易弄混。
当然,还有一种可能,就是您反复执行了命令多次。直接进phpmyadmin中,查看dede_sysconfig数据,删除不必要的就好。
DedeCMS使用技巧:如何做目录执行php脚本限制方法在根目录新增 .htaccess 文件,写
<IfModule mod_rewrite.c>
RewriteCond %{SCRIPT_FILENAME} -d [OR]
RewriteCond %{SCRIPT_FILENAME} -f
RewriteRule "(^|/)\." - [F]
RewriteRule uploads/(.*).(php)$ – [F]
RewriteRule other/(.*).(php)$ – [F]
</IfModule>
这样的规则,就可以阻止php执行了。
之前织梦后台用的php版本是5.2的新的服务器php版本是5.3.的现在后台打开空白,要怎么解决啊dede后台登陆后一片空白的第一种解决办法:
找到:include/common.inc.php文件,打开,查找程序代码://error_reporting(E_ALL);error_reporting(E_ALL || ~E_NOTICE);替换为:error_reporting(E_ALL);//error_reporting(E_ALL || ~E_NOTICE);这一步很重要,因为它会告诉你为什么变成空白的提示信息,保存之后再次进入管理后台,这个时候会发现后台会有一句话提示了,原文提示是:Parse error: parse error in D:\wwwroot\pcpps\Web\data\config.cache.inc.php on line 44 找到之后先把上面的改回来,然后我们从错误提示上来分析。从中我们可以现在在网站根目录的data\config.cache.inc.php on line 44有问题,然后我就把以前正常时备份过的data\config.cache.inc.php 重新上传全覆盖后问题就解决了.到此排除了dede后台登陆一片空白的问题。(以上是原文,我的提示情况则不一样,DEDE告诉我是plugins下的run.php文件出错,于是我通过FTP一看,远程服务器上的run.php文件已经没了,于是把本地的run.php文件传上去,问题解决。)
dede后台登陆后一片空白的第二种解决办法:好用
找到include文件夹中的userlogin.class.php文件中@session_register下的所有语句屏蔽掉。 --------------------------------------------------------------------------------/ * @session_register($this->keepUserIDTag);* / $_SESSION[$this->keepUserIDTag] = $this->userID;
/ * @session_register($this->keepUserTypeTag);* / $_SESSION[$this->keepUserTypeTag] = $this->userType;
/ * @session_register($this->keepUserChannelTag); * / $_SESSION[$this->keepUserChannelTag] = $this->userChannel;
/ * @session_register($this->keepUserNameTag);* / $_SESSION[$this->keepUserNameTag] = $this->userName; / * @session_register($this->keepUserPurviewTag);* / $_SESSION[$this->keepUserPurviewTag] = $this->userPurview;
/ * @session_register($this->keepAdminStyleTag);* / $_SESSION[$this->keepAdminStyleTag] = $adminstyle;
dede后台登陆后一片空白的原因:从第二种解决方法来看,主要原因是由于为了版本兼容的时候将类中的语句中没有进行判断引起的,采用PHP4的语句,只是屏蔽了提示,由于PHP5.4中已经不再使用这样的语句,并且出现了提示,所以会白屏。
dede后台登陆后一片空白的第三种解决办法:
进入data/sessions 目录删除缓存数据,然后在测试。如果是在服务器端一般是文件权限的问题,只需设置文件的user权限即可。
discuz7.2模板里面怎么运行php去dz的后台,添加调用,打进去你要运行的php代码,生成后会出现你要的调用代码。
关于dede运行php文件的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于dede运行php文件 PHP文件如何在HTML中运行的详细内容...