dedecms自定义表单,“时间类型”字段显示为数字的解决办法

织梦(dedecms)自定义表单,设置时间字段,填写后,后台看到的是一串数字,不是正常时间,具体解决方法(已测有效):

添加了时间字段以后,前台提交的页面时间能正常显示。

填写了数据之后,提交回来(后台)的时间,显示成为了一段数字,这个我们一般称为“时间戳”。

解释:我们前台提交的时间,程序会进行转换,成为了“时间戳”存在数据库中。然后我们要把数据(时间)调用出来就在相应的位置调用。

但,由于调用的时候,没有把时间戳转换成为正常的时间,所以导致了问题的产生。

然后,我们的原理是,在调用的地方,添加一段把时间戳转换过来的代码,就可以实现了。

 

1.编辑器打开后台模板:\dede\templets\diy_list.htm

2.在42行:“else”下面一行加入:

if($fielddata[1]=='datetime')
{
    $fields[$field] = GetDateTimeMk($fields[$field]);
}

保存之后就可以看到织梦后台自定义表单的时间字段显示正常了。

------------------------------------------------------------------

上面改的是后台的模板。

然后,为了让前台显示正常,我们也要在前台添加这句代码。

在后台的插件模板目录里面找到这个模板:list_diyform.htm

具体路径为:\dede\templets\plus\list_diyform.htm

打开编辑,在这两行下面加上那4行代码。

else if($fielddata[1]=='addon'){
    $fields[$field] = "<a href='{$fields[$field]}' target='_blank'><img src='img/addon.gif' border='0' /> 其它附件</a>";
}
//以下为新增加的代码
if($fielddata[1]=='datetime')
{
    $fields[$field] = GetDateTimeMk($fields[$field]);
}

以上方法就可以让织梦自定义表单的时间字段在前台和后台正常显示了。

 

posted @ 2017-12-29 14:57  紫云传芳  阅读(127)  评论(0)    收藏  举报