织梦dedecms自定义表单获取IP地址和提交时间

2019-12-22 二次开发 热度 °
小编在网上找了很多JS文件,但太繁琐了。后来小编注意到一个细节,每次登陆后台,织梦系统都会记录登陆时间和IP地址,这说明织梦自带IP获取和时间获取。
那么接下来小编分析了相关的文件代码,整理了一套自动获取时间和IP的代码出来,修改步骤如下:
首先修改plus/diy.php,在大概69行的地方找到:
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-d H:i:s");
}
然后在自定义表单里添加字段
IP地址:ip
提交时间:time

字段名称一定要和diy.php添加的字段名一致
注意:新增表单字段之后,必须要更新一下表单中 dede_fields 和 dede_fieldshash 这两项的值,很多站长会忽略这个问题,导致后台无法接收新增字段的内容。
在表单中调取:
<input type="hidden" name="ip" id="ip" value="">
<input type="hidden" name="time" id="time" value="">
type="hidden" 标签可以把这两个表单隐藏起来,不会影响代码执行。
这样用户执行提交操作,后台就会自动获取用户IP地址和当前的时间。