当前位置 : 主页 > 建站教程 > dedecms >

Dedecms自定义表单时间时间戳值类型的转换方法

来源:互联网 收集:自由互联 发布时间:2021-06-20
在给客户用织梦dedecms做二次开发的时候,自定义表单的功能会经常用到,比如比较简单的留言,订单咨询,意见反馈等等,是我们收集访客信息时经常需要用到的,而这些都可以通过
在给客户用织梦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 <td style="display:none;"><input type="text" name="subtime" id="subtime" value=""> <script type="text/javascript">                     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;                     } </script> </td>

  如果是其他自定义字段名称,记得将input里面的name与id值相应修改。
网友评论
相关栏目