未收到 PHP 联系表单消息

标签 php html css forms contacts

您好,我的网站上有一个简单的电子邮件联系表格,该表格可以正常工作,包括成功发送消息,但是,我没有收到发送到指定网络邮件服务器的电子邮件。我正在运行最新的 PHP。做一些网络服务器缓存邮件或者我没有看到这段代码中有一些错误。

<?php

$EmailFrom = "email@mydomain.com";
$EmailTo = "email@mydomain.com";
$Subject = "Contacting Me";
$Name = Trim(stripslashes($_POST['Name'])); 
$Tel = Trim(stripslashes($_POST['Tel'])); 
$Email = Trim(stripslashes($_POST['Email'])); 
$Message = Trim(stripslashes($_POST['Message'])); 

// validation
$validationOK=true;
if (!$validationOK) {
  print "<meta http-equiv=\"refresh\" content=\"0;URL=error.htm\">";
  exit;
}

// prepare email body text
$Body = "";
$Body .= "Name: ";
$Body .= $Name;
$Body .= "\n";
$Body .= "Tel: ";
$Body .= $Tel;
$Body .= "\n";
$Body .= "Email: ";
$Body .= $Email;
$Body .= "\n";
$Body .= "Message: ";
$Body .= $Message;
$Body .= "\n";

// send email 
$success = mail($EmailTo, $Subject, $Body, "From: <$EmailFrom>");

// redirect to success page 
if ($success){
  print "<meta http-equiv=\"refresh\" content=\"0;URL=index\">";
}
else{
  print "<meta http-equiv=\"refresh\" content=\"0;URL=error.htm\">";
}
?>

<div id="contact-area">

            <form method="post" action="contactengine.php">
                <label for="Name">Name:</label>
                <input type="text" name="Name" id="Name" />

                <label for="Email">Email:</label>
                <input type="text" name="Email" id="Email" />

                <label for="Message">Thought:</label><br />
                <textarea name="Message" rows="20" cols="20" id="Message"></textarea>

                <input type="submit" name="submit" value="Transmit" class="submit-button" />
            </form>

            <div style="clear: both;"></div></div>

最佳答案

发送邮件比运行 mail() 命令更复杂,你需要看一下 php.ini电子邮件配置的设置,并从那里继续进行故障排除。

如果您在没有配置运行 mail() 函数的主机上运行,​​您可以尝试使用以下开源邮件程序:

PHPMailer

您可以尝试使用提供的示例并从您家中连接的本地开发堆栈(XAMPP、MAMP、WAMP)运行,如果配置正确,您应该能够接收邮件。

一旦成功,你可以在服务器上试一下,应该也可以发送,如果没有,请检查发送邮件的外发端口是否被阻塞。

除了使用 PHPMailer,您还可以寻找一个简单的 PHP 邮件程序并尝试一下。

关于未收到 PHP 联系表单消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18554344/

相关文章:

html - 帖子内容不乱?

php - 为什么这个 xmlreader 代码不起作用?

php - 删除位于选定列表之后的列表

PHP 和 Mysql 查询 JSON 输出

jQuery - 查找具有 rel 属性的元素

css - 如何在平均堆栈中设置 Caps Lock 警告气球

php - WordPress:register_activation_hook 不工作

html - 每对响应式 jQuery 等高

html - 如何在表格单元格 "height: 100%"内创建一个 div

css - 如何将 span 元素大写