答案:帝国CMS可通过配置邮件功能并在表单处理中调用发送接口实现提交后邮件通知。1. 后台开启邮件设置并测试正常;2. 修改execedofun.php文件,在数据插入后添加SendMail代码发送通知;3. 可选给用户发确认邮件;4. 建议过滤输入、防注入、加验证码和提交限制,确保安全稳定。
帝国CMS自定义
表单提交
后实现邮件通知,可以通过后台邮件配置结合表单处理函数来完成。只要开启邮件发送功能,并在表单处理过程中调用系统邮件发送接口,用户提交表单后就能自动收到邮件提醒。
1. 开启帝国CMS邮件发送功能
进入帝国CMS后台,先确保系统支持邮件发送:
登录后台 → 系统设置 → 系统参数设置 → 邮件设置
填写发件
邮箱
信息:SMTP服务器、端口、发件人邮箱、授权码(密码)等
测试邮件发送功能是否正常,确保能成功接收测试邮件
注意:推荐使用QQ邮箱或企业邮箱,开启SMTP服务并正确填写授权码。
2. 修改自定义表单处理文件
帝国CMS的自定义表单数据处理通常由
e/enews/execedofun.php
或插件方式处理,你可以在表单提交后的处理逻辑中加入邮件发送代码。
PHP 8.5.5
PHP 8.5.5 是 PHP 8.5 分支的维护更新版本。该版本延续了“小步快跑”的迭代逻辑,通过深度错误修复、底层性能微调以及安全加固,旨在为开发者提供一个更健壮、更高效的运行环境。该版本严格遵守语义化版本规范,不包含破坏性变更。
下载
打开对应处理文件,在插入数据之后添加以下代码:
说明:your@email.com 是你希望收到通知的邮箱地址,可多个邮箱用逗号分隔。
3. 可选:给用户也发送确认邮件
如果想让用户提交后也收到一封确认邮件,可以将收件人改为 $_POST['email']:
建议加上判断,防止空邮箱导致发送失败。
4. 安全与稳定性建议
对 $_POST 数据进行过滤,防止XSS或SQL注入
使用 trim() 和
html
specialchars() 处理输入内容
可在后台设置中启用“验证码”提升
表单安全
性
避免频繁提交导致邮件轰炸,可加IP限制或时间间隔控制
基本上就这些。只要邮件配置正确,再在表单处理流程中加入发送逻辑,就能实现提交后自动发邮件提醒。不复杂但容易忽略细节,比如授权码和SMTP设置。
// 获取提交内容
$subject = "新表单提交通知";
$message = "姓名:" . $_POST['name'] . "
";
$message .= "电话:" . $_POST['phone'] . "
";
$message .= "留言:" . $_POST['content'] . "
";
$message .= "提交时间:" . date("Y-m-d H:i:s");
// 发送邮件
include_once(ECMS_PATH.'e/class/SendEmail.inc.php');
$sm = new SendEmail();
$send = $sm->SendMail('your@email.com', $subject, $message); // your@email.com 替换为你的接收邮箱
$user_subject = "您的表单已提交成功";
$user_message = "您好,我们已收到您的信息,会尽快与您联系!";
$sm = new SendEmail();
$send_user = $sm->SendMail($_POST['email'], $user_subject, $user_message);
