dedecms{dede:field name='phpurl'}没有用,看上去像这段代码没有解析,不知道为什么?
检查你的文件编码。还有你的标签的书写。php标签 需要后台开启才可以使用的。
页面的编码、文件的存储的编码、dedecms程序的编码要统一。
编码不能解析的原因,大部分是标签书写错误的原因。建议到dede默认的模板里直接复制。
使用sql语句
+++++++++++dedecms GBK 程序+++++++++++++++++
mysql50版的使用
-------------------------
CREATE TABLE IF NOT EXISTS `dede_payment` (
`id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
`code` varchar(20) NOT NULL DEFAULT '',
`name` varchar(120) NOT NULL DEFAULT '',
`fee` varchar(10) NOT NULL DEFAULT '0',
`description` text NOT NULL,
`rank` tinyint(3) unsigned NOT NULL DEFAULT '0',
`config` text NOT NULL,
`enabled` tinyint(1) unsigned NOT NULL DEFAULT '0',
`cod` tinyint(1) unsigned NOT NULL DEFAULT '0',
`online` tinyint(1) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
UNIQUE KEY `code`USING BTREE (`code`)
) ENGINE=MyISAM DEFAULT CHARSET=gbk;
mysql 51版及以上的使用
CREATE TABLE IF NOT EXISTS `dede_payment` (
`id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
`code` varchar(20) NOT NULL DEFAULT '',
`name` varchar(120) NOT NULL DEFAULT '',
`fee` varchar(10) NOT NULL DEFAULT '0',
`description` text NOT NULL,
`rank` tinyint(3) unsigned NOT NULL DEFAULT '0',
`config` text NOT NULL,
`enabled` tinyint(1) unsigned NOT NULL DEFAULT '0',
`cod` tinyint(1) unsigned NOT NULL DEFAULT '0',
`online` tinyint(1) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
UNIQUE KEY `code` (`code`) USING BTREE
) ENGINE=MyISAM DEFAULT CHARSET=gbk;
+++++++++++++++++dedecms Utf8 版本++++++++++++
mysql50版的使用
-------------------------
CREATE TABLE IF NOT EXISTS `dede_payment` (
`id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
`code` varchar(20) NOT NULL DEFAULT '',
`name` varchar(120) NOT NULL DEFAULT '',
`fee` varchar(10) NOT NULL DEFAULT '0',
`description` text NOT NULL,
`rank` tinyint(3) unsigned NOT NULL DEFAULT '0',
`config` text NOT NULL,
`enabled` tinyint(1) unsigned NOT NULL DEFAULT '0',
`cod` tinyint(1) unsigned NOT NULL DEFAULT '0',
`online` tinyint(1) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
UNIQUE KEY `code`USING BTREE (`code`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
mysql 51版及以上的使用
CREATE TABLE IF NOT EXISTS `dede_payment` (
`id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
`code` varchar(20) NOT NULL DEFAULT '',
`name` varchar(120) NOT NULL DEFAULT '',
`fee` varchar(10) NOT NULL DEFAULT '0',
`description` text NOT NULL,
`rank` tinyint(3) unsigned NOT NULL DEFAULT '0',
`config` text NOT NULL,
`enabled` tinyint(1) unsigned NOT NULL DEFAULT '0',
`cod` tinyint(1) unsigned NOT NULL DEFAULT '0',
`online` tinyint(1) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
UNIQUE KEY `code` (`code`) USING BTREE
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
你的{dede:field name='id'/} 有没有嵌套在其他标签之内呢? 比如嵌套在{dede:arclist }{/dede:arclist}之间这时你你应该是这么用:[field:id/] 我也是dede 菜鸟正在学习中希望可以帮到你
你和我前二天的需求一样,都是在主站上调用bbs的内容 不过如果你的bbs和主站的数据库在一台服务器上的话,你的方法有可能导致dedecms解析模板出问题,因为你select_mysql_db了我的解决方法是在bbs上开一个类似api的东东,用file_get_content远程抓取过来 用的是这篇文章里说的例子: dedecms模板中使用php语法 http://wwwphperzcom/phpcms/phpcms/061933G20113371html
您好,朋友。很高兴为您解答:
如果您装了畅言的话,默认是在默认文件ajaxfeedbackhtm中有一段调用代码为
{dede:changyan/}这个是封装起来的,应该没有问题。
如果您div未闭合建议检查网页中是否多出或者少写div
按理说你复制来的代码应该是有效的,看代码调用了一个javascript方法,是不是javascript文件没有加载完整?
这是我调用的方法:
HTML部分:
<div class="newdigg" id="newdigg"><div class="diggbox digg_good" onmousemove="thisstylebackgroundPosition='left bottom';" onmouseout="thisstylebackgroundPosition='left top';" onclick="javascript:postDigg('good',38)">
<div class="digg_act">顶一下</div>
<div class="digg_num">(0)</div>
<div class="digg_percent">
<div class="digg_percent_bar"><span style="width:0%"></span></div>
<div class="digg_percent_num">0%</div>
</div>
</div>
<div class="diggbox digg_bad" onmousemove="thisstylebackgroundPosition='right bottom';" onmouseout="thisstylebackgroundPosition='right top';" onclick="javascript:postDigg('bad',38)">
<div class="digg_act">踩一下</div>
<div class="digg_num">(0)</div>
<div class="digg_percent">
<div class="digg_percent_bar"><span style="width:0%"></span></div>
<div class="digg_percent_num">0%</div>
</div>
</div>
</div>
<script language="javascript">getDigg(38);</script>
JS部分:
function postDigg(ftype,aid){
var taget_obj = documentgetElementById('newdigg');
var saveid = GetCookie('diggid');
if(saveid != null)
{
var saveids = saveidsplit(',');
var hasid = false;
saveid = '';
j = 1;
for(i=saveidslength-1;i>=0;i--)
{
if(saveids[i]==aid && hasid) continue;
else {
if(saveids[i]==aid && !hasid) hasid = true;
saveid += (saveid=='' saveids[i] : ','+saveids[i]);
j++;
if(j==20 && hasid) break;
if(j==19 && !hasid) break;
}
}
if(hasid) { alert("您已经顶过该帖,请不要重复顶帖 !"); return; }
else saveid += ','+aid;
SetCookie('diggid',saveid,1);
}
else
{
SetCookie('diggid',aid,1);
}
myajax = new DedeAjax(taget_obj,false,false,'','','');
var url = "/plus/digg_ajaxphpaction="+ftype+"&id="+aid;
myajaxSendGet2(url);
DedeXHTTP = null;
}
function getDigg(aid)
{
var taget_obj = documentgetElementById('newdigg');
myajax = new DedeAjax(taget_obj,false,false,'','','');
myajaxSendGet2("/plus/digg_ajaxphpid="+aid);
DedeXHTTP = null;
}
确保加载了JS文件:
<script language="javascript" type="text/javascript" src="/include/dedeajax2js"></script>
phpcms优点:
1模块化安装,非常适合安装,拆卸,和拿到市场上去交易非常方便的。
2灵活的标签语法,非常强大。
3缓存做的非常优秀。几乎支持目前主流的几大缓存系统解决方案,file缓存,eaelerator缓存,memcache缓存,shmop缓存等
4安全性也不错的。后台为了防范入侵,采用了cookie和session同时存在验证技术,才可以安全进入后台。
多次登录失败,开启验证码功能。防止机器人频繁猜口令。
5数据库。在根目录下的include目录下,db_aessphpdb_mssqlphpdb_mysqlphp等,就照着他的方法,在增加几个也没问题的。
6兼容性。是在php4的基础上开发的,所以向下兼容性是不错的。在include/globalfuncphp这个文件可以看到很多if(!function_exist()){},这些代码就是为了兼容php4相关函数。
phpcms缺点:
1后台对应的模块的功能列表url,从数据库中读取的,也即是,安装的时候,将url写入数据库了。这个如果二次开发要修改的话,不是很方便的,最好是写到文件中,读取文件内容,方便开发者开发,而且也更容易维护,如果是出于安全考虑的话,不妨加下密也可以的。
2分部式。后台的某些功能模块,还是要调用各个应用模块的admin部分,相关*.inc.php文件.如果我要把其中某个模块或应用独立出去部署到其他的服务器上,就不方便了。
3数据库设计问题,后台开设模型时,表的引擎只能是myIsam,而不能选择其他的,字段的类型,比如要开设一个字段为number,类型为int,但是在新增加的模型表中还是以varchar出现,而不是int,长度是默认的255modelfiled表,才发现该系统是将类型写到该表中了。
4加密/解密程序。目前已经在想相关安全网站已被爆以破解。这也不是什么新闻了。在开发中,关注下相关安全厂商发布的漏洞。
5数据库抽象层。就以上提到的几个数据库文件。db_mssqlphpdb_mysqlphpdb_aessphp等对于数据库分布式,应该没问题的。数据库抽象层处理数据比较快,且快平台更容易且更容易维护,这个是需要考虑的。
Dedecms功能实用,模板功能使用简单。
网站模板库 » dedecms{dede:field name='phpurl'}没有用,看上去像这段代码没有解析,不知道为什么?
0条评论