DedeCMS自定义表单获取填单时间的方法
很早之前就搞清楚了织梦自定义表单的制作与织梦自定义表单扩展方法(DedeCMS提交表单后返回上一页的实现方法 ,DedeCMS自定义表单的前端分页显示实现方法),但是一直忽视自定义表单的时间问题,导致最近公司站有人提交订单后找不到他提交订单的时间,算是一个小小的瑕疵,痛定思痛之后,找到了方法解决这个问题:
一、JS动态获取当前电脑时间方法:
首先在自定义表单中添加时间的新字段,命名为shijian,数据类型为 单行文本(varchar)
然后在表单模板中调用的时候加上代码:
<input type='hidden' name='shijian' id='shijian' placeholder="" > <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("shijian").value=str; } </script> |
这样每次提交的自定义表单的时候,后台就会多一个提交时间,如下图:
二、静态获取方法:
首先打开/plus/diy.php,找到代码(大概在第69行):
if($fieldinfo[1] == 'textdata') { ${$fieldinfo[0]} = FilterSearch(stripslashes(${$fieldinfo[0]})); ${$fieldinfo[0]} = addslashes(${$fieldinfo[0]}); } |
在下面加上代码:
if($fieldinfo[0] == 'shijian') { ${$fieldinfo[0]}=date("Y-m-d H:i:s"); } |
同样在自定义表单中添加时间的新字段,命名为shijian,数据类型为 单行文本(varchar)
在表单模板中调用的时候加上代码:
<input type='hidden' name='shijian' id='shijian' placeholder="" > |
底部调用表,也加上字段:
<input type="hidden" name="dede_fields" value="name,text;tel,text;shijian,text" /> |