当我提交表单时,它表示邮件已成功发送。但我没有收到邮件,检查垃圾邮件文件夹。
我在http://ibsolutions.in设置了类似的表单。它工作得很好。
在过去的4个小时里一直在打扰我。这是我的contact.php
<?php
if(isset($_POST['submit'])) {
$to = "ekalaivan@gmail.com";
$subject = $_POST['posRegard'];
$name = $_POST['posName'];
$email = $_POST['posEmail'];
if ( preg_match( "/[\r\n]/", $posName ) || preg_match( "/[\r\n]/", $posEmail ) ) {
header( 'Location: http://swedsb.com/' );
}
$message = $_POST['posText'];
$body = "$name has sent you a greeting. \n E-Mail: $email\nMessage:\n $message";
mail($to, $subject, $body);
header( 'Location: http://swedsb.com/' );
}
else {echo "blarg!";}?>
答案 0 :(得分:2)
PHP总是说邮件是发送的...... 检查php.ini文件中sendmail的路径......
答案 1 :(得分:0)
之间没有空格
<?phpif
脚本看起来不错,您可以检查ini文件,或者如果邮件设置已开启,请与您的服务器管理员联系。
答案 2 :(得分:0)
我建议检查邮件服务器日志。一般来说,你会发现它们像: /var/log/mail.log。
找到日志文件后,运行该脚本,然后立即查看日志文件,看看会发生什么。搜索收件人(地址)电子邮件以查找日志中的条目。
祝你好运!
P.S。这个脚本有一些严重的安全问题。预计垃圾邮件发送者会试图欺骗您的代码代表他们发送电子邮件。特别重要的是检查将用作电子邮件标题或内容的一部分的任何变量。应对这些值进行消毒。查找换行符,多部分/混合MIME内容边界标记,BCC或其他标题以及其他任何看起来很有趣的内容。始终从您提供的明确电子邮件地址发送,请勿使用用户在网络表单中输入的发件人地址。