bucuo123 发表于 2019-3-22 11:52:00

dedecms自定义表单时间字段显示一段数字的解决办法

dedecms自定义表单时间字段显示一段数字的解决办法
            
        一般,我们要用到自定义表单也是为了把前台客户的数据,提交到数据库里,然后再后台我们可以看到
       
        自定义表单可以做:报名系统啦,招聘系统啦,返修系统等等,功能非常强大。
       
        但我们都遇到了一个时间问题,DEDE的自定义表单中,有添加时间的字段。我记得其他CMS中,时间字段基本都是自动添加的。
       
        添加了时间字段以后,前台提交的页面时间能正常显示
       
        填写了数据之后,提交回来(后台)的时间,显示成为了一段数字,这个我们一般称为“时间戳”。
       
        解释:我们前台提交的时间,程序会进行转换,成为了“时间戳”存在数据库中。然后我们要把数据(时间)调用出来就在相应的位置调用。但由于调用的时候,没有把时间戳转换成为正常的时间,所以导致了问题的产生。
       
        我们需要在调用的地方,添加一段把时间戳转换过来的代码,就可以了。
       
       
        修改dede/templets/diy_list.htm文件在42行
       
        else后面加入如下代码:
       
       
               
                       
                               
                                       
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        1
                                                                               
                                                                                        if($fielddata[1,=='datetime')
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        2
                                                                               
                                                                                                    {
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        3
                                                                               
                                                                                                       $fields[$field, = GetDateTimeMk($fields[$field,);
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        4
                                                                               
                                                                                                    }
                                                                       
                                                               
                                                       
                                               
                                       
                               
                       
               
       
       
        这样后台就可以正常显示了。
       
        然后,为了让前台显示正常,我们也要在前台添加这句代码。
       
        我们在后台的插件模板目录里面找到这个模板list_diyform.htm。然后修改它,在以下位置添加上面的代码。
       
       其它附件";
        }
       
        在这个的后面添加以下代码。保存就OK
       
       
               
                       
                               
                                       
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        1
                                                                               
                                                                                        if($fielddata[1,=='datetime')
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        2
                                                                               
                                                                                                    {
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        3
                                                                               
                                                                                                       $fields[$field, = GetDateTimeMk($fields[$field,);
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        4
                                                                               
                                                                                                    }
                                                                       
                                                               
                                                       
                                               
                                       
                               
                       
               
       
       
页: [1]
查看完整版本: dedecms自定义表单时间字段显示一段数字的解决办法