У меня есть код PHP 4, который необходимо изменить для отправки электронной почты через SMTP, и я уже установил почтовый пакет Pear на сервере. Это Севрер 2008 R2 64 битный. Проблема в том, что он не отправляет никаких писем! что мне здесь не хватает? Mail.php находится в папке, отличной от реальных файлов сайта, поэтому мне пришлось указать путь в поле «Включить». Название файла Vistiro.php3: Пожалуйста, совет:
Function PostSlip() {
Global $_parent,$_contact,$_problem,$_summary;
$p_contact = addslashes($_contact);
$p_problem = addslashes($_problem);
$p_summary = addslashes($_summary);
$p_now = time();
$qstring="insert into slips (spid,o_date,status,priority,o_tech,problem,summary,is_public,l_activity,l_tech,ctag) values ($_parent,$p_now,'O',4,'$p_contact','$p_problem','$p_summary','0','$p_now','$p_contact','ANONYMOUS')";
$qhandle = db_query($qstring);
$count = db_affected_rows($qhandle);
$newsid = db_insertid($qhandle);
RecalcSlip($_parent);
echo "<tr><td bgcolor=#808080 width=100% align=center>\n";
if ($count > 0) {
echo "Thank you for your submission.<br>";
echo "Your Slip ID is <b>$newsid</b><br>";
echo "Use this number at a later date to check on the status of this entry.";
include "/inetpub/PHP_New/PEAR/Mail.php";
$from = "[email protected]";
$to = "[email protected]";
$subject = "Test email using PHP SMTP with SSL\r\n\r\n";
$body = "This is a test email message";
$host = "smtp.companyname.com";
$port = "25";
$username = "domain\username";
$password = "email password";
$headers = array ('From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp = Mail::factory('smtp',
array ('host' => $host,
'port' => $port,
'auth' => true,
'username' => $username,
'password' => $password));
$mail = $smtp->send($to, $headers, $body);
if (PEAR::isError($mail)) {
echo("<p>" . $mail->getMessage() . "</p>");
} else {
echo("<p>Message successfully sent!</p>");
}
} else {
echo "An error occured during the update. Sorry, please try again later.";
}
echo "<br><a href=\"visitor.php3\">Return to Browsing</a>";
}
Задача ещё не решена.
Других решений пока нет …