PHP 通过 gmail SMTP 使用 PEAR 发送电子邮件


PHP sending email using PEAR through gmail smtp

经过一场战斗,获得梨的正确位置,我的代码不会产生任何错误。但它不会发送电子邮件。电子邮件正文是从表单生成的,该表单首先将数据输入mysql数据库,然后将相同的数据通过电子邮件发送给然后将数据用于任何用途的人。我已经在这个论坛和其他论坛上阅读了大量的问题和答案(这是最好的(,我编写的大部分代码都是受到这个论坛的启发。Gmail 帐户有效且密码正确。任何帮助或建议将不胜感激。

梨和梨邮件安装在服务器上,似乎正在工作(至少不会产生任何错误(这是我的代码:

   //Email process code

   ini_set('display_errors','on');
   error_reporting(E_ALL);
   /*
   require_once 'System.php';
  if(class_exists('System')===true) {
  echo 'PEAR is installed!';
  } else {
  echo 'PEAR is not installed :(';
   }
  */
  set_include_path('/home/surfcup/php/');
  require_once "Mail.php";

  $from = "<me@gmail.com>";
  $ToEmail = "<new@apdapalabs.com>"; 

  $EmailSubject = 'Hotel Registration Form'; 
  $host ="ssl://smtp.gmail.com";
  $port ="465";
  $username = "myAccount@gmail.com";
  $password =   "password";

  $headers = array ('From' => $from, 'To'=> $ToEmail, 'Subject'=> $EmailSubject);
  $smtp = Mail::factory('smtp',
    array ('host'=> $host,
           'port'=> $port,
           'auth'=> true,
           'username'=> $username,
           'password'=> $password));
  $MESSAGE_BODY = "Event: ".$Event."'n"; 
  $MESSAGE_BODY .= "Name: ".$realname."'n"; 
  $MESSAGE_BODY .= "Age Group: ".$Age."'n"; 
  $MESSAGE_BODY .= "Sex: ".$Sex."'n"; 
  $MESSAGE_BODY .= "Contact Name: ".$Contact_Name."'n"; 
  $MESSAGE_BODY .= "Contact Email: ".$Contact_Email."'n"; 
  $MESSAGE_BODY .= "Phone: ".$Phone."'n"; 
  $MESSAGE_BODY .= "Hotel Name: ".$Hotel_Name."'n"; 
  $MESSAGE_BODY .= "No Rooms: ".$No_Rooms."'n"; 
  $MESSAGE_BODY .= "Rate: ".$Rate."'n"; 
  $MESSAGE_BODY .= "Check In Date: ".$Check_In."'n"; 
  $MESSAGE_BODY .= "Check Out Date: ".$Check_Out."'n"; 
  $MESSAGE_BODY .= "Additional Info: ".$Add_Info."'n"; 

  $mail = $smtp->send($ToEmail, $headers, $MESSAGE_BODY);

        if (PEAR::isError($mail)){
            echo("<p>" . $mail->getMessage . "</p>");
            echo("'n");
            echo("<p>" . $mail->getDebugInfo . "</p>");
        }

我看到的关于通过GMAIL发送的大多数错误都是OpenSSL没有在您自己的服务器上启用。检查您的 php 中是否启用了扩展.ini

(另外,您能否错误检查"smtp"以防失败。