【问题标题】:Mail function is not working in PHP [duplicate]邮件功能在PHP中不起作用[重复]
【发布时间】:2013-12-16 08:31:33
【问题描述】:
<?php

if (isset($_POST['submit']))
{
    //if "email" is filled out, proceed

    $name=  mysql_real_escape_string($_POST['name']);
    $phone=  mysql_real_escape_string($_POST['phone']);

    $to = "admin@gmail.com";
    $subject = "Customer Intrested";
    $message = "Buyer Information and Intrested in land.";
    $message.= "Customer Name :".$name."\n";
    $message.= "Customer Phone :".$phone."\n";  

    $mail=mail($to, "Subject: $subject",$message );
    if($mail){
        echo "success";
    } else {
        echo "failed."; 
    }
?>

我正在使用上面的代码发送电子邮件..但我无法得到结果..它总是显示“谢谢你的消息”..

我可以得到姓名和电话的值。

如何解决这个问题?

【问题讨论】:

  • 你在哪里离线或在线运行这段代码?
  • 如果您在php.ini中设置了邮件设置,请检查您的垃圾邮件
  • @renishkhunt 我正在在线运行此代码
  • @HarishSingh 我也检查了 span 文件夹..但没有收到邮件
  • @PHPCoder 您的电子邮件功能正常工作。

标签: email php


【解决方案1】:
mail($to, "Subject: $subject",$message );
echo "Thank you for using our mail form";

代替这个,先检查邮件是否发送

$mail=mail($to, "Subject: $subject",$message );
if($mail){
  echo "Thank you for using our mail form";
}else{
  echo "Mail sending failed."; 
}

通过这个实际上你可以知道你的邮件功能是否正常

如果它不起作用。问题可能出在本地主机中的 SMTP 设置上

如果未启用,则启用 php 中的错误

ini_set('display_errors',1);

【讨论】:

  • 如果我使用 if($mail) 条件它显示邮件发送失败..如何纠正它?
  • 但在 localhost 中显示成功
【解决方案2】:
// message lines should not exceed 70 characters (PHP rule), so wrap it
$message = wordwrap($message, 70);

更多帮助:http://www.w3schools.com/php/php_mail.asp

【讨论】:

  • 我建议永远不要使用 w3schools
猜你喜欢
  • 2015-12-27
  • 1970-01-01
  • 2014-05-19
  • 2011-04-07
  • 2012-07-12
  • 1970-01-01
相关资源
最近更新 更多