今天在给客户做网站【有话说】版块的时候,就碰到一位客户要使用织梦自定义表单,然后在前台显示发布时间的功能,更要命的时候要他显示自定义表单当前提交的日期,找遍了整个互联网的答案都没有找到需要的,结果自己给搞出来了,现在给大家分享下代码:
{dede:loop table='dede_diyform2' sort='' row='10' if=''}
<span>用户:[field:name/] 时间:[field:time function="GetDateTimeMK(@me)"/] </span>
<p>[field:beizhu/]</p>
{/dede:loop}
说明:dede_diyform2 表示当前自定义表单的数据库表名称;name、beizhu是定义的字段名称;
[field:time function="GetDateTimeMK(@me)"/] 调用当前时间正确显示形式:2020-4-1 10:36:22
相关分享:
我们在用织梦dedecms添加自定义表单时有时想要设置一个用户提交的时间,方便查询,比如我们的网站管理人员在查看留言、询盘等信息的时候,关注到客户发表信息的时间,那么,dedecms自定义表单增加添加时间怎么弄呢?
一、在自定义表单中添加字段,在后台找到:核心 - 频道模型 - 自定义表单,添加时间字段 shijian,
二、在调用表单的页面中加入代码,本例中是/templets/****mb/list_liuyan.htm
<input type='hidden' name='shijian' id='shijian'/>
<script language="javascript" type="text/javascript">
var wdtime= new Date();
document.getElementById("shijian").value=wdtime.toLocaleString();
</script>
<input type="hidden" name="dede_fields" value="name,text;phone,text;select;time,text;shijian,datetime" />
注意:name一定要和刚刚设置的数据字段名一致,本例是shijian。还有要把shijian,datetime这个值要传递过去。
代码也可以用以下两种:
<input name="shijian" value="" type="hidden" id="shijian" class="intxt">
<script type="text/javascript">
window. 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>
或者:
<input type="hidden" name="shijian" id="shijian" value="{dede:php} echo $showtime=date('Y-m-d H:i:s');{/dede:php}">
三、比较重要的一步,在系统模板中添加/***ht(默认的后台地址是dede)/templets/diy_list.htm大概42行左右的else前面或后面加入下面的代码:
if($fielddata[1]=='datetime')
{
$fields[$field] = GetDateTimeMk($fields[$field]);
}
上传修改好的文件,重新生成页面就可以了。