IIS与PHPMailer的SMTP问题:邮件描述字段显示undefined
问题排查与解决
描述字段显示undefined,本质是$description变量未被正确定义或传递到邮件模板中,按以下步骤排查:
核对前端表单的描述字段
name属性,确保和PHP接收的参数名完全一致。比如前端表单是:<textarea name="description" placeholder="项目描述"></textarea>PHP里就要对应使用
$_POST['description'](或$_GET,取决于表单提交方式)来获取值。确保PHP中正确接收并赋值给
$description,建议做存在性检查避免报错:// POST提交示例 $description = isset($_POST['description']) ? trim($_POST['description']) : '无项目描述';检查邮件模板中的变量输出逻辑,如果是PHP文件,要确保用PHP语法输出变量,避免直接写裸变量:
<p style='font-family: monospace;margin: 0;'><?php echo htmlspecialchars($description); ?></p>用
htmlspecialchars()可以防止XSS注入,同时确保内容正常解析。临时开启PHP错误提示,查看是否有变量未定义的Notice信息,快速定位问题:
error_reporting(E_ALL); ini_set('display_errors', 1);
内容的提问来源于stack exchange,提问作者Achraf Hamza
相关产品推荐
相关产品推荐

