在使用织梦(DedeCMS)进行网站开发时,有时需要对自定义表单提交后的提示信息进行优化。本文将详细介绍如何将DedeCMS自定义表单提交后的提示信息改为弹窗提示,并且让页面停留在当前页,而不是跳转到其他页面。

第一步:打开并编辑 /include/common.func.php 文件。
找到大约299行的代码段:

function GetCkVdValue() {
    @session_id($_COOKIE['PHPSESSID']);
    @session_start();
    return isset($_SESSION['securimage_code_value']) ? $_SESSION['securimage_code_value'] : '';
}

在这段代码之后添加一个新的PHP方法:

/**
*_alert_back() 弹窗
*@access public 表示函数对外公开
*@return float 表示返回出来一个浮点数字
*/
function _alert_back($_info,$_url){
    echo "<script type='text/javascript'>alert('$_info');window.location.href='$_url';</script>";
}

第二步:找到并打开 /plus/diy.php 文件。
在大概第98行的位置找到以下代码:

$goto = !empty($cfg_cmspath) ? $cfg_cmspath : '/';

将其修改为:

$goto = !empty($cfg_cmspath) ? $cfg_cmspath : $_SERVER["HTTP_REFERER"];

然后继续查找以下代码:

showmsg($bkmsg, $goto);

将其替换为:

_alert_back($bkmsg,$goto)

完成上述修改后保存文件即可。这样,当用户提交自定义表单后,系统会以弹窗形式显示提示信息,并自动返回到当前页面。

通过以上步骤,您可以轻松实现 DedeCMS 自定义表单提交后的提示信息改为弹窗提示,并停留在当前页面的功能。这种改进不仅提升了用户体验,还使网站操作更加流畅。


注意:请确保在实际操作前备份相关文件,以防万一出现错误可以及时恢复。