我试图让 php 在创建帐户时向新用户发送激活电子邮件。我的问题不在于此过程的代码,而在于 php 发送电子邮件。
到目前为止,我已经在安装了 Kubuntu 桌面的 Ubuntu 服务器 12.04 上安装了 Xampp。我还使用该sudo apt-get install php-pear
命令安装了 pear。
最后我安装了postfix。当我在浏览器中加载我的页面时,我收到以下错误:
不推荐使用:在第 55 行的 /opt/lampp/lib/php/Mail.php 中不推荐使用通过引用分配 new 的返回值
不推荐使用:在第 135 行的 /opt/lampp/lib/php/Mail.php 中不推荐使用通过引用分配 new 的返回值
严格标准:不应静态调用非静态方法 PEAR::isError(),假设 $this 来自第 167 行 /opt/lampp/lib/php/Mail/smtp.php 中的不兼容上下文
严格标准:不应静态调用非静态方法 PEAR::isError(),假设 $this 来自第 290 行 /opt/lampp/lib/php/Net/SMTP.php 中的不兼容上下文
严格标准:不应静态调用非静态方法 PEAR::raiseError(),假设 $this 来自第 168 行 /opt/lampp/lib/php/Mail/smtp.php 中的不兼容上下文
感谢您的回复!尽管继承了我的代码,但我仍然遇到一些问题:
<?php
include("Mail.php");
$recipients = "noreply.njmedia@gmail.com";
$headers["From"] = "noreply.njmedia@gmail.com";
$headers["To"] = "noreply.njmedia@gmail.com";
$headers["Subject"] = "Test message";
$body = "TEST MESSAGE!!!";
$params["host"] = "smtp.google.com";
$params["port"] = "465";
$params["auth"] = true;
$params["username"] = "noreply.njmedia@gmail.com";
$params["password"] = "gmailpassword(my real password is entered here)";
// Create the mail object using the Mail::factory method
$mail_object =& Mail::factory("smtp", $params);
$mail_object->send($recipients, $headers, $body);
?>
这是调试的结果:
object(PEAR_Error)#4 (8) {
["error_message_prefix"]=> string(0) ""
["mode"]=> int(1)
["level"]=> int(1024)
["code"]=> NULL
["message"]=> string(52) "unable to connect to smtp server smtp.google.com:465"
["userinfo"]=> NULL
["backtrace"]=> array(3) { [0]=> array(6) { ["file"]=> string(27) "/opt/lampp/lib/php/PEAR.php" ["line"]=> int(533) ["function"]=> string(10) "PEAR_Error" ["class"]=> string(10) "PEAR_Error" ["type"]=> string(2) "->" ["args"]=> array(5) { [0]=> string(52) "unable to connect to smtp server smtp.google.com:465" [1]=> NULL [2]=> int(1) [3]=> int(1024) [4]=> NULL } } [1]=> array(7) { ["file"]=> string(32) "/opt/lampp/lib/php/Mail/smtp.php" ["line"]=> int(169) ["function"]=> string(10) "raiseError" ["class"]=> string(4) "PEAR" ["object"]=> object(Mail_smtp)#1 (10) { ["host"]=> string(15) "smtp.google.com" ["port"]=> string(3) "465" ["auth"]=> bool(true) ["username"]=> string(25) "noreply.njmedia@gmail.com" ["password"]=> string(28) "Fakepasswordforstackoverflow" ["localhost"]=> string(9) "localhost" ["timeout"]=> NULL ["verp"]=> bool(false) ["debug"]=> bool(false) ["sep"]=> string(2) " " } ["type"]=> string(2) "->" ["args"]=> array(1) { [0]=> string(52) "unable to connect to smtp server smtp.google.com:465" } } [2]=> array(7) { ["file"]=> string(32) "/media/HDD2/NJmedia/mailtest.php" ["line"]=> int(23) ["function"]=> string(4) "send" ["class"]=> string(9) "Mail_smtp" ["object"]=> object(Mail_smtp)#1 (10) { ["host"]=> string(15) "smtp.google.com" ["port"]=> string(3) "465" ["auth"]=> bool(true) ["username"]=> string(25) "noreply.njmedia@gmail.com" ["password"]=> string(28) "Fakepasswordforstackoverflow" ["localhost"]=> string(9) "localhost" ["timeout"]=> NULL ["verp"]=> bool(false) ["debug"]=> bool(false) ["sep"]=> string(2) " " } ["type"]=> string(2) "->" ["args"]=> array(3) { [0]=> string(25) "noreply.njmedia@gmail.com" [1]=> array(3) { ["From"]=> string(25) "noreply.njmedia@gmail.com" ["To"]=> string(25) "noreply.njmedia@gmail.com" ["Subject"]=> string(12) "Test message" } [2]=> string(15) "TEST MESSAGE!!!" } } }
["callback"]=> NULL
}