修改plus/diy.php,在:
if($fieldinfo[1]=='textdata') { ${$fieldinfo[0]}=FilterSearch(stripslashes(${$fieldinfo[0]})); ${$fieldinfo[0]}=addslashes(${$fieldinfo[0]}); } //后面添加 if($fieldinfo[0]=='ip') { ${$fieldinfo[0]}=GetIP(); } if($fieldinfo[0]=='time') { ${$fieldinfo[0]}=date("Y-m-dH:i:s"); }
在自定义字段里添加字段
IP地址:ip
提交时间:time
字段名称一定要和diy.php添加的字段名一致,在表单中调取:
<inputtype="hidden"name="ip"id="ip"value=""> <inputtype="hidden"name="time"id="time"value="">
type='hidden' 为隐藏字段,在前端不显示,用户提交后台会自动获取IP和时间.【另外可以结合:自定义表单添加邮件通知】
填写了数据之后,提交回来(后台)的时间,显示成为了一段数字,这个我们一般称为“时间戳”。
解释:我们前台提交的时间,程序会进行转换,成为了“时间戳”存在数据库中。然后我们要把数据(时间)调用出来就在相应的位置调用。但由于调用的时候,没有把时间戳转换成为正常的时间,所以导致了问题的产生。
我们需要在调用的地方,添加一段把时间戳转换过来的代码,就可以了。
修改dede/templets/diy_list.htm文件在42行
else后面加入如下代码:
if($fielddata[1]=='datetime') { $fields[$field]=GetDateTimeMk($fields[$field]); }
这样后台就可以正常显示了。
然后,为了让前台显示正常,我们也要在前台添加这句代码。
我们在后台的插件模板目录里面找到这个模板list_diyform.htm。然后修改它,在以下位置添加上面的代码。
其它附件</a>";
}
在这个的后面添加以下代码。保存就OK
if($fielddata[1]=='datetime') { $fields[$field]=GetDateTimeMk($fields[$field]); }