怎样给Dedecms织梦网站自定义表单设置必填项

怎样给Dedecms织梦网站自定义表单设置必填项,第1张

之前一直使用dedeCms建站的,时间也算很长了,但是最近我们公司用dede做的网站被频繁被挂马,网上已经找不到解决方法,客户天天投诉,dedecms从原创团队解散后,几年了基本没有什么更新和维护,没有办法只能重新寻找新的cms改版。

由于客户逼得紧、领导要求更换新的cms程序,首先接触帝国cms,接触了帝国也就不到1个月的时间,下面都是我个人的观点,首先帝国的可扩展性性和功能确实比DEDE强,而且很多东西更加人性化,但是后台的操作界面体验很不好,显得非常老旧,后台功能组织也不如dede清晰明细,dede如果想要去使用的话在后台很快就能找到,而帝国可能找了半天才找到,有些东西分类不清楚,只有用的时间长了,才明白在哪里,但是帝国毕竟安全,模板存在数据库不易被偷,从可做网站的架构上讲,dede似乎只能做小网站,而帝国却可以完成中型网站的建设,也陆续用帝国改版了几个客户网站,后面使用慢慢发现一个问题,模板制作太难了,比dede的模板制作效率低太多。

本来想选择phpcms的,但是phpcms已经倒闭关站了,网上也报一堆漏洞没有人修补,所以还是不准备入坑。

不得已情况下,圈子里面的朋友推荐用pageadmin、老实说这个cms是net开发的,个人开始是非常抵触的,因为个人最开始用的dedecms是php开发的,所以对php的情有独钟,不过还是抱着试试的心态去安装了一个。

经过若干个困扰后,终于安装成功、登陆后台,非常漂亮,虽然第一次使用,但是仿佛每个界面我都非常熟悉和亲切,然后我尝试了一下功能,都很不错,这里不得不说pageadmin细节上体验会比其他cms好很多,后面经过差不多一周的时间研究了使用教程和模板制作教程,现在基本上算数熟能生巧了,功能和帝国一样都很灵活,模板制作比dedecms还要方便,支持局部页、公共页等概念,这些其他cms没有的。

总体来说,这几个cms系统各有优势,但是如果从安全上来说,不建议用dedecms和phpcms、尽量选择pageadmin或帝国,除非你有二次开发能力,真的可以修复好那些存在的漏洞,不过个人建议,dedecms和phpcms既然官方都不维护了,大家再入坑就是为以后找麻烦了。

建站

服务器理解客户的请求,但拒绝处理它。通常由于服务器上文件或目录的权限设置导致。通常情况可能(但不限于此)的原因有:原因1:apache配置文件中没有对站点目录的权限许可,这通常是在初始安装apache后,更改了默认的apache站点目录时所至(重要,常发生):如将站点目录更改为:/var/www,则在apache配置文件中如果不加下面的配置 就会返回403错误。<Directory "/var/www"> Options Indexes FollowSymLinks AllowOverride None Order allow,deny Allow from all</Directory>提示:生产环境上面的配置还需修改,见下文,此处仅就本文的主题讲解。原因2:站点目录下无首页文件(index文件),而apache的配置又禁止了目录浏览,就会提示403错误,配置如下(偶尔发生):a站点目录下无首页文件(index文件):[root@http-server www]# pwd/var/www[root@http-server www]# lltotal 12drwxr-xr-x 2 root root 4096 Jun 4 22:11 chen-rw-r--r-- 1 root root 0 Jun 4 22:11 chenhtml提示:上面列出来的就是站点目录/var/www目录下没有预设 首页DirectoryIndex indexhtmlbapache的配置禁止目录浏览的三种配置第一种配置:<Directory "/var/www"> Options -Indexes FollowSymLinks AllowOverride None Order allow,deny Allow from all</Directory>第二种配置:<Directory "/var/www"> Options FollowSymLinks AllowOverride None Order allow,deny Allow from all</Directory>第三种配置:<Directory "/var/www"> Options None AllowOverride None Order allow,deny Allow from all</Directory>原因3:还是Directory权限问题(不常发生)如下文:拒绝10000/24整段访问。这样被拒绝的主机访问就会出现403错误<Directory "/var/www"> Options Indexes FollowSymLinks AllowOverride None Order allow,deny Allow from all Deny from 10000/24</Directory>

<Directory "/var/www"> Options Indexes FollowSymLinks AllowOverride None Order allow,deny #Allow from all Allow from 1000116 #Deny from 10000/24</Directory>原因4:站点目录权限问题(不常发生)。站点目录需要apache的用户有访问权限,否则就会报403错误。[root@http-server var]# pwd/var[root@http-server var]# chown -R rootroot blog/[root@http-server var]# chmod 700 blog[root@http-server var]# ll -d blog/drwx------ 3 root root 4096 Jun 4 22:11 blog/

本分参考自需详细可点击:http://oldboyblog51ctocom/2561410/581383

本文出自 “叫醒你的不是闹钟而是梦想” 博客,请务必保留此出处http://purifyblog51ctocom/10572011/1792344

如何使用mysql(lamp)分离环境搭建dedecms织梦网站及apache服务器常见的403http状态码及其解决方法

标签:apache服务器常见的http状态码及其解决方法dedecms搭建dedecms搭建步骤403403forbidden

1编辑器打开plusdiyphp

2在40行左右找到此行代码:

$dede_fields=empty($dede_fields)'':trim($dede_fields);

3在这一行代码之下,加入代码,复制的话删掉代码中的空行

//增加必填字段判断

if($required!=''){

if(preg_match('/,/',$required))

{

$requireds=explode(',',$required);

foreach($requiredsas$field){

if($$field==''){

showMsg('带号的为必填内容,请正确填写','-1');

exit();

}

}

}else{

if($required==''){

showMsg('带号的为必填内容,请正确填写','-1');

exit();

}

}

}

//end

4保存完成后,在表单模版页面找到这行代码:

<formaction="/plus/diyphp"enctype="multipart/form-data"method="post">

在这行代码之下,加入代码:

<inputtype="hidden"name="required"value="数据字段名,数据字段名"/>

注意这行代码要修改下,根据你的表单所需要设置的必填项,例如设置“姓名”、“邮箱”为必填项

添加新字段--“表单提示文字”:姓名--“字段名称”:name

添加新字段--“表单提示文字”:邮箱--“字段名称”:email

此行代码应为:

<inputtype="hidden"name="required"value="name,email"/>

这样就把这两个选项设置为必填项了,如果没有填写就提交,会打开窗口提示“带号的为必填内容,请正确填写”,当然,这一句话可以改成其它的文字

网上看到另一种方法,未测试,仅作为资料收藏

js方法:

1先在要发布表单的模板上加

<scriptsrc='你的路径/jsjs'type="text/javascript"></script>

2在你自定义的路径新建文件jsjs,然后复制以下内容粘贴保存,代码:

<!--

$(document)ready(function()

{

//验证

$('complain')submit(function()

{

if($('name')val()==""){

$('name')focus();

alert("用户名不能为空!");

returnfalse;

}

if($('tel')val()=="")

{

$('tel')focus();

alert("联系电话不能为空!");

returnfalse;

}

if($('title')val()=="")

{

$('title')focus();

alert("标题不能为空!");

returnfalse;

}

if($('text')val()=="")

{

$('text')focus();

alert("具体内容不能为空!");

returnfalse;

}

})

});

-->

注:

$('complain')submit(function()//complain为自定义表单的ID,如果生成的表单没有可以自行加上,即id="complain"

if($('name')val()==""){

$('name')focus();//name为要验证表单中的ID,如想让用户名不能为空,在后台用户名的数据字段名设为name,下同

3设置好后更新就可以看到效果了

希望本文所述对大家的dedecms建站有所帮助。

1、这个是显示时间的代码

你可以随便放到一个位置 一般放到header的一个位置

<script language="javascript">

function showtime()

{

var today,hour,second,minute,year,month,date;

var strDate ;

today=new Date();

var n_day = todaygetDay();

switch (n_day)

{

case 0:{

strDate = "星期日"

}break;

case 1:{

strDate = "星期一"

}break;

case 2:{

strDate ="星期二"

}break;

case 3:{

strDate = "星期三"

}break;

case 4:{

strDate = "星期四"

}break;

case 5:{

strDate = "星期五"

}break;

case 6:{

strDate = "星期六"

}break;

case 7:{

strDate = "星期日"

}break;

}

year = todaygetYear();

month = todaygetMonth()+1;

date = todaygetDate();

hour = todaygetHours();

minute =todaygetMinutes();

second = todaygetSeconds();

if(month<10) month="0"+month;

if(date<10) date="0"+date;

if(hour<10) hour="0"+hour;

if(minute<10) minute="0"+minute;

if(second<10) second="0"+second;

documentgetElementById('time')innerHTML = year + " 年 " + month + " 月 " + date + " 日 " + strDate +" " + hour + ":" + minute + ":" + second; //显示时间

setTimeout("showtime();", 1000); //设定函数自动执行时间为 1000 ms(1 s)

}

</script>

<div id="time"></div>

<script language="javascript"> showtime();</script>

2、DEDE默认是有会员登录框的 你可以去自己更改样式

3、页面可以设置成你想要的分辨率

4、不用再买mysql了 一个就可以用了 不会冲突

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 怎样给Dedecms织梦网站自定义表单设置必填项

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情