在织梦dedecms中,自定义表单显示时间可以通过以下步骤实现:
添加自定义字段
1、创建自定义表单:在织梦dedecms后台找到“核心”“频道模型”“自定义表单”,点击创建一个新的表单。
2、添加字段:在新创建的表单中,添加所需的字段,如联系人、联系方式、地址、留言内容等,为了记录提交时间,需要添加一个名为“提交时间”的字段,类型选择为“文本形式”。
修改模板代码
1、前台模板修改:打开前台调用表单的页面模板(如/templets/plus/list_diyform.htm),在适当位置加入JavaScript代码,用于在页面加载时自动填充当前时间到“提交时间”字段。
<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("mytime").value=str; } </script>
mytime
应替换为实际“提交时间”字段的ID或名称。
2、后台模板修改:如果需要在后台也显示提交时间,并且以正常的时间格式显示(而非时间戳),则需要修改后台模板,打开后台模板文件(如dedetempletsdiy_list.htm),在适当位置(如42行“else”下面一行)加入以下代码:
if($fielddata[1]=='datetime') { $fields[$field] = GetDateTimeMk($fields[$field]); }
这段代码的作用是将数据库中存储的时间戳转换为正常的时间格式。
注意事项
在添加自定义字段时,请确保字段名称唯一且不与系统保留字冲突。
修改模板代码时,请备份原始文件以防万一。
如果对PHP或JavaScript不熟悉,建议寻求专业人士的帮助。
FAQs
问题1:为什么提交后的自定义表单时间显示为一串数字?
答:这是因为在织梦dedecms中,时间类型的字段默认是以时间戳的形式存储在数据库中的,如果不进行转换,直接在后台查看时会显示为一串数字,通过上述方法修改模板代码后,可以将时间戳转换为正常的时间格式显示。
问题2:如何在织梦dedecms自定义表单中同时显示提交时间和IP地址?
答:除了按照上述步骤添加和显示提交时间外,还可以在自定义表单中添加一个新的字段来记录用户的IP地址,具体方法是在自定义表单中添加一个名为“用户IP”的字段(类型选择为“文本形式”),并在表单提交时获取用户的IP地址填充到该字段中,这通常需要修改表单提交的处理文件(如/plus/diy.php),在其中添加获取用户IP地址的代码。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1209116.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复