织梦自定义表单的功能与扩展方法,但是一直忽视自定义表单时间问题,导致最近公司站有人提交订单后找不到他提交订单的时间,算是一个小小的瑕疵,痛定思痛之后,找到了方法解决这个问题:

 

一、JS动态获取当前电脑时间方法:

 

首先在自定义表单中添加时间的新字段,命名为shijian,数据类型为 单行文本(varchar)

 

DedeCMS自定义表单获取填单时间的方法

 

然后在表单模板中调用的时候加上代码

 

 


        
                                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;
                                  }

 

这样每次提交的自定义表单的时候,后台就会多一个提交时间,如下图:

 

DedeCMS自定义表单获取填单时间的方法

 

二、静态获取方法:

 

首先打开/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");
                                          }

 

DedeCMS自定义表单获取填单时间的方法

 

同样在自定义表单中添加时间的新字段,命名为shijian,数据类型为 单行文本(varchar)

 

DedeCMS自定义表单获取填单时间的方法

 

在表单模板中调用的时候加上代码

 

 

这样也可以实现自定义表单获取填单时间了,但是有一个特别注意的问题就是,很多读者都说调不出来时间,网站源码网检查他们的代码后,发现他们在表单后面的 dede_fields项中没有把新增的自定义时间字段加进去,像这样:

 

 

这样才可以完美实现自定义表单获取填单时间了

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。