【发布时间】:2013-04-30 13:22:28
【问题描述】:
我是初学者,请多多指教。 事实:尝试使用梨的邮件并使其工作。我安装了 pear、mail 和 Net。我使用 Apache 2.2.22、PHP 5.3.13、Windows 7。整个系统本地安装在我的笔记本电脑上。这有什么区别吗?另外,我不知道我的 apache 是否支持 smtp。我使用this 作为指导。
这是我的代码(尝试创建一个简单的“忘记密码”,未完成)
<?php
error_reporting(E_ALL);
//connect to db
include_once('connection.php');
include('Mail.php');
//came from login form
$logf = $_POST['logf'];
//query according to logf
$stmt = $dbh->prepare("SELECT mail FROM table where usrnm = :nm");
$stmt->bindParam(':nm', $nm, PDO::PARAM_STR);
$nm=$logf;
$data=array('nm'=>$nm);
$result=$stmt->execute($data);
$d=0;
while ($row = $stmt->fetch()) {
$be[$d]=$row['mail'];
$d++;}
$mes="ελα";
//mail came from query
$email = $be[0];
$message = $mes;
$from = 'Website Enquiry ';
$to = "Hammy Goonan ";
$subject = "ανακτηση";
$body = $message;
$host = "localhost";
$headers = array ('From' => $from,
'To' => $to,
'Subject' => $subject
);
$smtp = Mail::factory('smtp',
array ('host' => $host,
'auth' => false,
'port' => '25'
)
);
$mail = $smtp->send($to, $headers, $body);
if (PEAR::isError($mail)) {echo($mail->getMessage());}
else {echo("Message successfully sent!");}
?>
我得到这个错误:
无法连接到本地主机:25 [SMTP:无法连接套接字:�������������� ����������� �������� , ������ ������������� ���������� ��� �������� ������. (代码:-1,响应:)]
请帮忙,我已经阅读了教程,但我不知道如何解决这个问题。其实,我不知道从哪里开始。
谢谢。
编辑 我还尝试了使用 sendmail 的this(示例部分),但我不明白以下内容
$params['sendmail_path'] = '/usr/lib/sendmail';
Sendmail 也需要 smtp 服务器?
【问题讨论】:
-
你的笔记本电脑上运行邮件服务器吗?
-
您仍然需要在本地运行 SMTP 服务器,因为您指定了“localhost”。
-
@ceejayoz 不,没有。只是 apache、php、postgreSQL。哦,还有地理服务器
-
那么,
localhost是您希望处理电子邮件的地方吗? -
@Marc B @ceejayoz 我刚刚编辑了我的问题...