巨石业务咨询邮箱 咨询邮箱:404397954@qq.com 业务咨询热线 咨询热线:0755-88844416 微信 微信
您的位置:主页 > 人才招聘 > 技术资讯 >
企业建站:dedecms自定义表单提交后返回
发表日期:2014-07-16 15:08   文章编辑:admin    浏览次数:
 
建企业网站,dedecms也用的非常多,但是很多企业站要求做留言页面。这意味着要用到自定义表单。但是有个问题,织梦自带的自定义表单,再提交过后会自动跳转到网站的首页,如果要返回提交的那个页面,改如何做呢?
首先,大家需要明白的是自定义表单的数据,是提交到dedecms自带的plug下的diy.php文件进行处理,大家打开一看一眼就能找到我们比较熟悉的标题提交成功提示的信息,也就是“$bkmsg = '发布成功,请等待管理员处理…';”,看到这里我想大家已经能明白怎么修改提交成功的信息了。
那么我们怎么去修改提交成功之后的跳转呢?
里面有这样一段代码:
if($dsql->executenonequery($query))
{
$id = $dsql->GetLastID();
if($diy->public == 2)
{
//diy.php?action=view&diyid={$diy->diyid}&id=$id
$goto = "diy.php?action=list&diyid={$diy->diyid}";
$bkmsg = '发布成功,现在转向表单列表页…';
}
else
{
$goto = !empty($cfg_cmspath) ? $cfg_cmspath : '/';
$bkmsg = '发布成功,请等待管理员处理…';
}
showmsg($bkmsg, $goto);
}
这是diy.php自带的代码,我们需要在‘$bkmsg = '发布成功,请等待管理员处理…';’在这后面添加一段代码让他返回到当前页面,代码是“echo "<script>alert('提交成功!'); history.go(-1)</script>";”这样添加过后就可以了。然后替换掉网站原来的文件,就可以实现表单提交过后返回当前页面。最后的代码如下:
if($dsql->executenonequery($query))
{
$id = $dsql->GetLastID();
if($diy->public == 2)
{
//diy.php?action=view&diyid={$diy->diyid}&id=$id
$goto = "diy.php?action=list&diyid={$diy->diyid}";
$bkmsg = '发布成功,现在转向表单列表页…';
}
else
{
$goto = !empty($cfg_cmspath) ? $cfg_cmspath : '/';
$bkmsg = '发布成功,请等待管理员处理…';
echo "<script>alert('提交成功!'); history.go(-1)</script>";
}
showmsg($bkmsg, $goto);
}
使用这样的代码就能实现提交表单过后,返回的是当前页面。
如果要跳到指定的页面,代码为
$goto = "网址";