在给客户用织梦DedeCMS做二次开发的时候,自定义表单的功能会经常用到,比如比较简单的留言,订单咨询,意见反馈等等,是收集访客信息时经常需要用到的,而这些都可以通过DedeCMS的自定义表单功能轻松实现。在收集表单信息的时候往往需要了解访客提交数据的时间,Dedecms自定义表单的时间类型字段在后台显示的值为时间戳,要想办法将时间戳转化成能看懂的时间格式。
解决办法一:
修改/dede/templets/diy_list.htm,在第42行else前面加上以下代码:
PHP
else if($fielddata[1]==’datetime’)
{
$fields[$field] = GetDateTimeMk($fields[$field]);
}
这样就能将时间戳转换成能读懂的时间日期格式了,另外前台由于不需要显示用户提交信息的当前时间,可以通过css将其隐藏掉。
解决办法二:
不通过时间类型的字段,用单行文本框+JS来实现,这样做就不用转化时间戳,而是直接通过JS获取时间值以字符串的形式写入。
在自定义表单增加一个文本框字段,例如字段名称为:subtime,在前台调用时增加相应的JS
PHP
window.onload = function(){
var nowDate = new Date();
var str = nowDate.getFullYear()+”-“+(nowDate.getMonth() + 1)+”-“+nowDate.getDate()+” “+nowDate.getHours()+”:”+nowDate.getMinutes()+”:”+nowDate.getSeconds();
document.getElementById(“subtime”).value=str;
}
如果是其他自定义字段名称,记得将input里面的name与id值相应修改。