За последние 24 часа нас посетил 17551 программист и 1313 роботов. Сейчас ищут 1393 программиста ...

Ошибка приветствия EHLO

Тема в разделе "Работа с почтой", создана пользователем Basicprof, 30 ноя 2009.

  1. Basicprof

    Basicprof Активный пользователь

    С нами с:
    30 ноя 2009
    Сообщения:
    8
    Симпатии:
    0
    Всем здравствуйте! помогите разобратся при отсылки почты с авторизацией через телнет привтствие проходит нормально выдается
    250-mx30.mail.ru Hello mail.ru [80.64.80.192]
    250-SIZE 10485760
    250-8BITMIME
    250-AUTH PLAIN LOGIN
    250 PIPELINING
    а при введении тогоже приветствия через код php выдает ОШИБКА ПРИВЕТСТВИЯ EHLO Кто сталкивался подскажите пожалуйста в чем причина вот код:




    PHP:
    1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    2. <html xmlns="http://www.w3.org/1999/xhtml">
    3. <head>
    4. <meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
    5. <title>Untitled Document</title>
    6. </head>
    7.  
    8. <body><?
    9. function get_data($smtp_conn)
    10. {
    11. $data="";
    12. while($str = fgets($smtp_conn,515))
    13. {
    14. $data .= $str;
    15. if(substr($str,3,1) == " ") { break; }
    16. }
    17. return $data;
    18. }
    19.  
    20. $header="Date: ".date("D, j M Y G:i:s")." +0700 ";
    21. $header.="From: =?windows-1251?Q?".str_replace("+","_",str_replace("%","=",urlencode(`Максим`)))."?= <login@mail.ru> ";
    22. $header.="X-Mailer: The Bat! (v3.99.3) Professional ";
    23. $header.="Reply-To: =?windows-1251?Q?".str_replace("+","_",str_replace("%","=",urlencode(`Максим`)))."?= <login@mail.ru> ";
    24. $header.="X-Priority: 3 (Normal) ";
    25. $header.="Message-ID: <172562218.".date("YmjHis")."@mail.ru> ";
    26. $header.="To: =?windows-1251?Q?".str_replace("+","_",str_replace("%","=",urlencode(`Сергей`)))."?= <qwe@asd.ru> ";
    27. $header.="Subject: =?windows-1251?Q?".str_replace("+","_",str_replace("%","=",urlencode(`проверка`)))."?= ";
    28. $header.="MIME-Version: 1.0 ";
    29. $header.="Content-Type: text/plain; charset=windows-1251 ";
    30. $header.="Content-Transfer-Encoding: 8bit ";
    31.  
    32. $text="привет, проверка связи.";
    33.  
    34. $smtp_conn = fsockopen("mail.autoforex.com.ua", 25,$errno, $errstr, 10);
    35. if(!$smtp_conn) {print "соединение с серверов не прошло"; fclose($smtp_conn); exit;}
    36. $data = get_data($smtp_conn);
    37. fputs($smtp_conn,"EHLO autoforex.com.ua ");
    38. $code = substr(get_data($smtp_conn),0,3);
    39. if($code != 250) {print "ошибка приветсвия EHLO"; fclose($smtp_conn); exit;}
    40. fputs($smtp_conn,"AUTH LOGIN ");
    41. $code = substr(get_data($smtp_conn),0,3);
    42. if($code != 334) {print "сервер не разрешил начать авторизацию"; fclose($smtp_conn); exit;}
    43.  
    44. fputs($smtp_conn,base64_encode("support@autoforex.com.ua")." ");
    45. $code = substr(get_data($smtp_conn),0,3);
    46. if($code != 334) {print "ошибка доступа к такому юзеру"; fclose($smtp_conn); exit;}
    47.  
    48.  
    49. fputs($smtp_conn,base64_encode("tupoka1972")." ");
    50. $code = substr(get_data($smtp_conn),0,3);
    51. if($code != 235) {print "не правильный пароль"; fclose($smtp_conn); exit;}
    52.  
    53. fputs($smtp_conn,"MAIL FROM:support@autoforex.com.ua ");
    54. $code = substr(get_data($smtp_conn),0,3);
    55. if($code != 250) {print "сервер отказал в команде MAIL FROM"; fclose($smtp_conn); exit;}
    56.  
    57. fputs($smtp_conn,"RCPT TO:Basicprof@ukr.net ");
    58. $code = substr(get_data($smtp_conn),0,3);
    59. if($code != 250 AND $code != 251) {print "Сервер не принял команду RCPT TO"; fclose($smtp_conn); exit;}
    60.  
    61. fputs($smtp_conn,"DATA ");
    62. $code = substr(get_data($smtp_conn),0,3);
    63. if($code != 354) {print "сервер не принял DATA"; fclose($smtp_conn); exit;}
    64.  
    65. fputs($smtp_conn,$header." ".$text." . ");
    66. $code = substr(get_data($smtp_conn),0,3);
    67. if($code != 250) {print "ошибка отправки письма"; fclose($smtp_conn); exit;}
    68.  
    69. fputs($smtp_conn,"QUIT ");
    70. fclose($smtp_conn);
    71. ?>
    72. </body>
    73. </html>
     
  2. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    а какой код возврата?
    =)

    if($code != 250)

    ?
     
  3. Basicprof

    Basicprof Активный пользователь

    С нами с:
    30 ноя 2009
    Сообщения:
    8
    Симпатии:
    0
    Да if($code != 250)
     
  4. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    что да? какой возвращает вместо 250?
     
  5. Basicprof

    Basicprof Активный пользователь

    С нами с:
    30 ноя 2009
    Сообщения:
    8
    Симпатии:
    0
    незнаю , ставлю функцию принт на переменную $code
    а в браузере ничего нет ( пусто) подскажите пожалуйста а как проверить?
    $code = substr(get_data($smtp_conn),0,3);
    if($code != 250) {print "$code"; fclose($smtp_conn); exit;}
     
  6. Simpliest

    Simpliest Активный пользователь

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    Оформи код!
    руками.

    1.Вместо print лучше пользоваться var_dump/print_r

    2. после
    Код (Text):
    1. fputs($smtp_conn,"EHLO autoforex.com.ua ");
    что у тебя возвращает?
    Код (Text):
    1. get_data($smtp_conn)
     
  7. Basicprof

    Basicprof Активный пользователь

    С нами с:
    30 ноя 2009
    Сообщения:
    8
    Симпатии:
    0
  8. Basicprof

    Basicprof Активный пользователь

    С нами с:
    30 ноя 2009
    Сообщения:
    8
    Симпатии:
    0
    syntax error, unexpected
     
  9. Basicprof

    Basicprof Активный пользователь

    С нами с:
    30 ноя 2009
    Сообщения:
    8
    Симпатии:
    0
    fputs($smtp_conn,"EHLO autoforex.com.ua ");

    var_dump/print_r "get_data($smtp_conn)";
    Вставляю вот так ? пишет
    Parse error: syntax error, unexpected '"' in /home/autofore/public_html/nalog.php on line 38
     
  10. Simpliest

    Simpliest Активный пользователь

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    не-не-не так не пойдет....

    может ну его эту почту?

    А начать с начала? http://phpfaq.ru
     
  11. Basicprof

    Basicprof Активный пользователь

    С нами с:
    30 ноя 2009
    Сообщения:
    8
    Симпатии:
    0
    Большое спасибо!

    Ну спасибо и на этом! Конечно же начну сначала просто время поджимает если нетрудно кто ни будь подскажите!
     
  12. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    ты начала основы выучи, а потом будешь тут канючить.

    научись уважать других и тогда, МОЖЕТ БЫТЬ, другие начнут уважать тебя...

    лет через 5...
     
  13. Basicprof

    Basicprof Активный пользователь

    С нами с:
    30 ноя 2009
    Сообщения:
    8
    Симпатии:
    0
    Еще раз благодарю за подсказку.