php - 无法将表单信息发送到电子邮件 (PHP)
问题描述
我正在制作一个网页,该网页应该有一个表格,填写后应该将所有信息发送到电子邮件。但是,我似乎无法让它工作,这让我发疯。我是初学者,所以我想知道是否有人可以帮助我?
PHP 和我并不是最好的朋友……尽管如此,我并没有放弃。似乎我已经设法将 index.php 与 contact-form-php 连接起来,但是,每当我尝试它时,它都无法捕获输入到表单中的信息,而是向我发送“else”操作,这只是一个消息说有错误。我真的不知道如何解决它。
HTML
<form class="form-align mx-5 ml-md-0" action="contact-form.php" method="post">
<input class="form-control my-3 inputname" type="text"
placeholder="Name" id="dname">
<input class="form-control my-3 inputemail" type="email"
placeholder="Email" id="demail">
<textarea class="form-control my-3 inputtext" type="text"
placeholder="We're all ears..." rows="5" id="dtext"></textarea>
<a href="https://vivasox.com/"><button type="submit"
class="btnsend">SEND</button></a>
</form>
PHP
<?php
/* Capturing variables */
$demail= ( empty($_POST["demail"]) ) ? NULL : $_POST["demail"];
$dname= ( empty($_POST["dname"]) ) ? NULL : $_POST["dname"];
$dtext= ( empty($_POST["dtext"]) ) ? NULL : $_POST["dtext"];
/* Verifying POST */
if ($demail && $dname && $dtext){
$for = 'myemail@hotmail.com';
$mailheader = "From: ".$demail."\r\n";
$mailheader .= "Content-type: text/html; charset=utf-8\r\n";
$MESSAGE_BODY = "Nombre: ".$dname."\n";
$MESSAGE_BODY .= "\n<br>Email: ".$demail."\n";
$MESSAGE_BODY .= "\n<br>Mensaje: ".nl2br($dtext)."\n";
mail($for, $MESSAGE_BODY, $mailheader) or die("Sorry. There seems to be a problem. Please try sending your message again!");
header("Location: https://socklesslooksolution.com/");
}else{
/* Error message */
echo "Error: Please fill the form!";
}
?>
我希望它发送电子邮件,然后返回站点的主页,但它不执行这些操作。
非常感谢您的参与!
解决方案
您的输入和 textarea 缺少该name
属性,您需要在提交表单时发送值:
<form class="form-align mx-5 ml-md-0" action="contact-form.php" method="post">
<input class="form-control my-3 inputname" type="text" name="dname" placeholder="Name" id="dname">
<input class="form-control my-3 inputemail" type="email" name="demail" placeholder="Email" id="demail">
<textarea class="form-control my-3 inputtext" type="text" name="dtext" placeholder="We're all ears..." rows="5" id="dtext"></textarea>
<a href="https://vivasox.com/"><button type="submit" class="btnsend">SEND</button></a>
</form>
推荐阅读
- sql - 使用 Group By 汇总表中的 Null 值
- jquery - 插入更多 document.querySelector
- apache-spark - Parquet 文件在哪些级别存储最小/最大/不同(等)统计信息?
- python - 安装的 Python 和 Idle 不可用
- c++ - if 语句中的逻辑运算符是否相互影响?
- php - 选择值时如何自动完成php表单上的多个字段
- python - 无法在散景图中更新 CDSView
- github - 当您关闭 Github 上的里程碑时,未解决的问题会发生什么?
- grafana - 在 Grafana 中将 InfluxDB 数据源中的二进制事件显示为(开/关)单元跳转
- javascript - 在 WordPress 子主题中使用 TypeScript