Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |

28.01.2006, 22:16
|
|
Новичок
Регистрация: 27.01.2006
Сообщений: 8
Провел на форуме: 11116
Репутация:
0
|
|
Мыло через socket в PHP
Народ, помогите, пожалуйста!
Решил написать простецкий скрипт отправки почты. Проверил nslookup-ом сервера обмена почтой на Mail.ru.
код PHP
Код:
<?php
$host="mxs.mail.ru";
$port="25";
$from="errou@mail.ru";
$to="errou@mail.ru";
$text="test";
$f=fsockopen($host,$port);
fputs($f, "HELO {$_SERVER['SERVER_NAME']}\r\n");
fputs($f,"MAIL FROM: <$from>");
print(fgets($f));
print(fgets($f));
fputs($f,"RCPT TO: <$to>");
fputs($f,"DATA");
fputs($f,"$text");
fputs($f,"RSET");
fputs($f,"QUIT");
?>
Коннектится нормально, при трассировке выдает, что все пучком:
220 Mail.Ru ESMTP
250 mx20.mail.ru ready to serve
Но мыло не приходит.
|
|
|

28.01.2006, 22:56
|
|
Постоянный
Регистрация: 02.10.2005
Сообщений: 490
Провел на форуме: 2333839
Репутация:
212
|
|
Код:
$host="mxs.mail.ru";
Попробуй заменить на
Код:
$host="smtp.mail.ru";
|
|
|

29.01.2006, 00:12
|
|
Новичок
Регистрация: 27.01.2006
Сообщений: 8
Провел на форуме: 11116
Репутация:
0
|
|
Сообщение от D1mOn
Код:
$host="mxs.mail.ru";
Попробуй заменить на
Код:
$host="smtp.mail.ru";
Я попробовал - то же самое. То есть он нормально коннектится к почтовому серваку, а дальше - ни ответа, ни привета.
И еще с этим скриптом неясно - при попытке прочтения из сокета более двух строк - скрипт не завершает работу.
То есть, если читать а-ля
while(!feof($f))
{
print(fgets($f));
} - подвисает, и все.
|
|
|

29.01.2006, 00:21
|
|
Умиротворенн
Регистрация: 09.12.2004
Сообщений: 996
Провел на форуме: 2386719
Репутация:
1384
|
|
function mail($login, $passwd, $to, $subj, $text){
$fp=fsockopen("smtp.mail.ru", 25);
if($fp){
$post[]="HELO mail.ru\r\n";
$post[]="AUTH LOGIN ".base64_encode($login)."\r\n";
$post[]=base64_encode($passwd)."\r\n";
$post[]="MAIL FROM: ".$login."@mail.ru\r\n";
$post[]="RCPT TO: ".$to."\r\n";
$post[]="DATA\r\n";
$post[]="From: ".$login."@mail.ru\r\n";
$post[]="Date: ".date('r')."\r\n";
$post[]="To: ".$to."\r\n";
$post[]="Subject: ".$subj."\r\n";
$post[]="MIME-Version: 1.1\r\n";
$post[]="Content-type: text; charset=windows-1251\r\n";
$post[]="Content-Transfer-Encoding: 8bit\r\n";
$post[]="\r\n";
$post[]=$text."\r\n.\r\n";
$post[]="QUIT\r\n";
foreach($post AS $k=>$v)
{
fwrite($fp, $v);
if($k<7 || $k>14){$answ = fgets($fp, 128);}
}
fclose($fp);
}
}
__________________
http://madnet.name - madnet - blog | homepage (Мысли, релизы, скрипты, софт)
http://antichat.ru - Лучший сайт по безопасности
irc.antichat.ru:7771 #antichat - общение online
ГАРАНТ ФОРУМА
|
|
|

29.01.2006, 01:34
|
|
Новичок
Регистрация: 27.01.2006
Сообщений: 8
Провел на форуме: 11116
Репутация:
0
|
|
Спасибо огромное!
|
|
|

01.02.2006, 10:18
|
|
Познавший АНТИЧАТ
Регистрация: 26.11.2004
Сообщений: 1,149
Провел на форуме: 941818
Репутация:
569
|
|
2 madnet
Где-то я уже эту функцию видел %)))
|
|
|
|
 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|