我正在开发一个简单的网站,但面对联系表单的一些问题,我尝试了所有类型的设置,但它没有用。
问题是当我填写表格并按下提交按钮时,它将显示“消息已成功发送”但我无法收到任何邮件到我的邮件ID。
那我该怎么办...... ???
我的PHP CODE
:文件名为“mail.php
”
<?php
echo '<html xmlns="http://www.w3.org/1999/xhtml">';
echo '<head>';
echo '<meta http-equiv="content-type" content="text/html; charset=utf-8" />';
echo '<title>';
echo $title;
echo '</title>';
echo '</head>';
echo '<body>';
$to = "anup.karanjkar08@gmail.com;
$subject = $_REQUEST['Name'] + "Sent a Mail";
$message = $_REQUEST['Message'] ;
$from = $_REQUEST['Email'] ;
$headers = "From:" . $from;
$a= mail($to,$subject,$message);
if ($a) {
echo "Message sent successfully";
}
else
{
echo "Sorry there is an error.";
}
echo '</body>';
echo '</html>';
?>
我的HTML CODE
<form name="contact_to_infrasure" id="infrasure" action="mail.php" method="POST">
<div class="row-fluid">
NAME<br><input type="text" name="Name">
</div>
<div class="row-fluid">
EMAIL<br><input type="text" name="Email"><br>
</div>
<div class="row-fluid">
MESSAGE<br><textarea rows="5" style="width: 60%" name="Message"></textarea><br>
</div>
<div class="row-fluid">
<!-- <input class="span3" type="submit" value="SEND MESSAGE"> -->
<button class="btn" type="submit" value="Submit" onClick="">SEND MESSAGE</button>
</div>
</form>
请帮助我...... !!!
答案 0 :(得分:4)
首先在此行添加结尾。
$to = "anup.karanjkar08@gmail.com";
然后尝试运行它是否有效。
与托管服务提供商核实php中的邮件功能是否有效。
答案 1 :(得分:0)
更改了这些行,php中使用的连接是.
而不是+
,javscript中使用的+
$subject = $_REQUEST['Name'] . "Sent a Mail";
<?php
echo '<html xmlns="http://www.w3.org/1999/xhtml">';
echo '<head>';
echo '<meta http-equiv="content-type" content="text/html; charset=utf-8" />';
echo '<title>';
echo $title;
echo '</title>';
echo '</head>';
echo '<body>';
$to = "anup.karanjkar08@gmail.com";
$subject = $_REQUEST['Name'] . "Sent a Mail"; // changed this line removed +
$message = $_REQUEST['Message'] ;
$from = $_REQUEST['Email'] ;
$headers = "From:" . $from;
$a= mail($to,$subject,$message, $headers); // added headers here
if ($a) {
echo "Message sent successfully";
}
else
{
echo "Sorry there is an error.";
}
echo '</body>';
echo '</html>';
?>
邮件未发送的原因,
ISP阻止
越来越多的ISP阻止端口25,即用于发送电子邮件的端口。许多主要的ISP,包括NetZero,MSN,Earthlink,AT&amp; T,Comcast和Verizon,阻止端口25试图控制垃圾邮件。如果您的ISP阻止端口25,那么您将无法从服务器发送电子邮件。这不是服务器问题,而是ISP的直接阻止。我们经常可以通过配置您的邮件服务器来收听其他端口来解决这些问题。
参考:http://www.rackaid.com/resources/cannot-send-email-how-to-fix-email-sending-and-receiving-errors/