发布网友 发布时间:2022-04-23 08:45
共1个回答
热心网友 时间:2022-06-18 13:12
首先大家需要明白的是自定义表单的数据,是提交到dedecms自带的plug下的diy.php文件进行处理,大家打开一看一眼就能找到我们比较熟悉的标题提交成功提示的信息,也就是“$bkmsg = '发布成功,请等待管理员处理…';”,看到这里我想大家已经能明白怎么修改提交成功的信息了。 那么我们怎么去修改提交成功之后的跳转呢? 里面有这样一段代码: 1 if($dsql->executenonequery($query)) 2 { 3 $id = $dsql->GetLastID(); 4 if($diy->public == 2) 5 { 6 //diy.php?action=view&diyid={$diy->diyid}&id=$id 7 $goto = "diy.php?action=list&diyid={$diy->diyid}"; 8 $bkmsg = '发布成功,现在转向表单列表页…'; 9 } 10 else 11 { 12 $goto = !empty($cfg_cmspath) ? $cfg_cmspath : '/'; 13 $bkmsg = '发布成功,请等待管理员处理…'; 14 } 15 showmsg($bkmsg, $goto); 16 } 这是diy.php自带的代码,我们需要在‘$bkmsg = '发布成功,请等待管理员处理…';’在这后面添加一段代码让他返回到当前页面,代码是“echo "<script>alert('提交成功!'); history.go(-1)</script>";”这样添加过后就可以了。然后替换掉网站原来的文件,就可以实现表单提交过后返回当前页面。最后的代码如下: 1 if($dsql->executenonequery($query)) 2 { 3 $id = $dsql->GetLastID(); 4 if($diy->public == 2) 5 { 6 //diy.php?action=view&diyid={$diy->diyid}&id=$id 7 $goto = "diy.php?action=list&diyid={$diy->diyid}"; 8 $bkmsg = '发布成功,现在转向表单列表页…'; 9 } 10 else 11 { 12 $goto = !empty($cfg_cmspath) ? $cfg_cmspath : '/'; 13 $bkmsg = '发布成功,请等待管理员处理…'; 14 echo "<script>alert('提交成功!'); history.go(-1)</script>"; 15 } 16 showmsg($bkmsg, $goto); 17 } 使用这样的代码就能实现提交表单过后,返回的是当前页面。