php - PHP 表单提交发送空白电子邮件
问题描述
在我的网站上手动提交表单后,我的收件箱中会出现一封带有主题的电子邮件。电子邮件的主题正确地发送为“反馈表提交”,但电子邮件本身是空白的。我的表单上没有正文,也没有来自邮箱的输入。
形式:
<form action="feedback-form.php" method="post" enctype="text/plain">
E-mail:<br>
<input type="text" class="textForm" name="email_address" size="35"><br>
Comment:<br>
<textarea name="feedback" class="textForm" rows="6" cols="35"></textarea><br><br>
<input type="submit" id="submit" class="button" value="Send">
</form>
PHP:
<?php
#Receive user input
$email_address = $_POST['email_address'];
$feedback = $_POST['feedback'];
#Filter user input for invalid characters
function filter_email_header($form_field)
{
return preg_replace('/[nr|!/<>^$%*&]+/', '', $form_field);
}
$email_address = filter_email_header($email_address);
#Send email
$headers = "From: $email_address";
$sent = mail('me@website.com', 'Feedback Form Submission', $feedback, $headers);
我相信我的mail
功能设置正确。表单中的变量与我的 PHP 脚本使用的变量匹配。我的 PHP 和 HTML 在同一个文件中。我在其他问题中读到,在提交空白表单时,将两段代码放在同一个文件中可能会导致问题,但是在将有效信息输入表单时遇到问题。我在这里做错了什么?
解决方案
推荐阅读
- css - Css 目标只是类名以字符串开头并以字符串结尾
- tensorflow - 如何创建具有多个功能的 Tensorflow serving_input_receiver_fn?
- nginx - 在一台服务器上使用上游时如何获取真实的客户端 IP?
- javascript - 为什么单击按钮时我的数据文件无法更改?
- c++ - 硬编码双精度的最低有效字节是一种好的舍入策略吗?
- java - 使用 Apache Commons 4.5.5 和 Java 11 上传/下载大文件
- cordova - Cordova 应用程序存储库 - iOS 和 Android 应该有一个还是分开的?
- javascript - Meteor递归方法调用导致无限循环
- javascript - 从没有 API/APP 密钥/令牌/秘密的 Facebook 页面提取公共帖子
- node.js - 在 node.js/net 上使用 aedes 代理进行 MQTT QoS 自动化测试