在使用dedecmsCMS创建网站时,许多用户希望实现自动获取用户IP地址和提交时间的功能。虽然网上有许多JS文件可以实现这一功能,但它们往往过于繁琐。幸运的是,dedecmsCMS系统本身具备记录登录时间和IP地址的功能,这意味着我们可以通过修改相关代码来实现这一需求。
为了实现自动获取IP地址和时间的功能,我们需要对dedecmsCMS进行一些简单的修改。以下是具体的步骤:
首先,打开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地址和当前时间,并将其记录到后台数据库中。这种方法不仅简单高效,而且充分利用了dedecmsCMS自带的功能,避免了额外插件或复杂脚本的引入。
总之,通过上述方法,您可以轻松地为您的dedecmsCMS网站添加自动获取IP地址和时间的功能,提升用户体验的同时,也为数据收集提供了便利。