trigram
Guest
Сокет и SMTP
Всем Привет.
Я написал ф-цию, для отправки почты через smtp сервер, начинаю тестировать:
Денвер + Courier MailServer.
Конект к SMTP начинается, но через 1,5 минуты разрыв, скрипт пишит:
Fatal error: Maximum execution time of 30 seconds exceeded in z:\home\wcps.ru\www\smtp.php on line 32
и то через минуту после того, как SMTP сервер сообщает о разрыве...
В чем может быть дело??? Помогите...
P.S. - Функция:
Всем Привет.
Я написал ф-цию, для отправки почты через smtp сервер, начинаю тестировать:
Денвер + Courier MailServer.
Конект к SMTP начинается, но через 1,5 минуты разрыв, скрипт пишит:
Fatal error: Maximum execution time of 30 seconds exceeded in z:\home\wcps.ru\www\smtp.php on line 32
и то через минуту после того, как SMTP сервер сообщает о разрыве...
В чем может быть дело??? Помогите...
P.S. - Функция:
PHP:
<?php
function smail($to, $subject, $body, $mail) {
$smtp_server="wcps.ru";
$charser="windows-1251";
$fr="1"; // 1 - Через SMTP, 0 - через ф-цию mail()
$name="admin";
$smtp_user_name="admin";
$smtp_user_pass="admin";
if($fr==0){
return mail($to, $subject, $body, "From: \"" . $name . "\" <" . $mail . ">\nX-Mailer: php/" . phpversion());
}
elseif($fr==1){
if (!$f = fsockopen($smtp_server, 25)) { return false;}
if(isset($smtp_user_name) and isset($smtp_user_pass)){
fputs($f, "EHLO " . $smtp_server . "\r\n");
fgets($f);
fputs($f, "AUTH LOGIN\r\n");
fgets($f);
fputs($f, base64_encode($smtp_user_name) . "\r\n");
fgets($f);
fputs($f, base64_encode($smtp_user_pass) . "\r\n");
fgets($f);
}else{
fputs($f, "helo " . $smtp_server . "\n");
fgets($f);
}
fputs($f, "mail from:<" . $mail . ">\n");
fgets($f);
fputs($f, "rcpt to:<" . $to . ">\n");
fgets($f);
fputs($f, "data\n");
fgets($f);
fputs($f, "Content-Type: text/plain;");
fgets($f);
fputs($f, "charset=$charser\n");
fgets($f);
fputs($f, "MIME-Version: 1.0\n");
fgets($f);
fputs($f, "From: \"" . $name . "\" <" . $mail . ">\n");
fgets($f);
fputs($f, "X-Mailer: php/" . phpversion() . "\n");
fgets($f);
fputs($f, "Subject: " . $subject . "\n\n");
fgets($f);
fputs($f, "$body\n.\n");
fgets($f);
fputs($f, "quit\n");
fclose($f);
return true;
}
}
$to="[email protected]";
$subject="SMTP/POP3 Mail Server";
$body="Helloy, Mail Server";
smail($to, $subject, $body, "[email protected]");
?>