我的电子邮件功能无法在我的网站上运行。当我填写表格时,它不会发送到我的电子邮件地址?我错过了什么?任何人都可以帮助引导我朝着正确的方向前进吗?
<?php
// form submitted
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
// list variables
$name = $_POST['name'];
$email = $_POST['email'];
$comment = $_POST['comment'];
$company = $_POST['company'];
$industry = $_POST['industry'];
$phone = $_POST['phone'];
// email
$to = 'myemail@example.com';
$subject = 'Contact Form:';
$emailBody = "
Hi,
<br /><br />
<strong>Name</strong> : $name.<br />
<strong>Phone</strong> : $phone.<br />
<strong>Email</strong> : $email.<br />
<strong>Company</strong> : $company.<br />
<strong>Industry</strong> : $Industry.<br />
<strong>Comments</strong> : $comment.";
// mail
if ($_POST['name']) {
} else {
echo "please specify your name<br>";
}
if ($_POST['email']) {
} else {
echo "please specify your email<br>";
}
if ($_POST['comment']) {
echo "Hi, $name, <br>
Thank you for the following comments: <br> <em>$comment</em>
<br>I will get back to you shortly at $email";
} else {
echo 'please specify your request';
}
}
if ($name && $email && $comments) {
mail('$to', '$subject', 'From: $emailBody');
}
?>
非常感谢你的帮助
答案 0 :(得分:2)
基本PHP:您使用的是错误字符串类型:
mail('$to', '$subject', 'From: $emailBody');
^---^---
'
- 引用的字符串 NOT 扩展变量。您尝试将电子邮件发送到字面字符为$
,t
和o
的地址。对于这种“只是变量”的用法,你不需要全部引用:
mail($to, $subject, "From: $emailBody");
^--- ^--- note the different quotes here
答案 1 :(得分:0)
添加到Marc的答案:( 赞美,我应该说)
此if ($name && $email && $comments)
应为if ($name && $email && $comment)
,因为您有$comment = $_POST['comment'];
因此没有变量匹配,条件语句因此而失败,mail()
函数也将失败。
更改为:
if ($name && $email && $comment) {
mail($to, $subject, "From: $emailBody");
}