странности с POST

Стас

Троечник
странности с POST

Написал скрипт отправки писем. Провайдер не позволяет пользоваться функцией mail(...), т.к. в конфиге(phpinfo выдал) SMTP=localhost , [email protected]. Пытаюсь отправить почту, используя fsockopen(...), и вот тут-то начинаются странности. Скрипт, вызываемый сам по себе(допустим mmm.php) отправляет почту без проблем. Адрес, сабж, все сохраняется. Если же я прихожу на него через post(то бишь- форму отправки скрипта), то почта не отправляется вообще никуда. Хотя, в результате пишет, что все отправилось. Что за странность и как лечится?
 

neko

tеam neko
http://www.phpfaq.ru/debug

видишь ли дело не в том, что "нифига не отправляется"
а дело в том, что ТВОЙ скрипт неправильно работает, если ему передается что-то постом

может быть он неправильно обрабатывает параметры
может быть он их вообще не обрабатывает
может быть много чего

отлаживай.
 

Стас

Троечник
Так в том-то все и дело: Я прихожу на mmm.php через POST и отправляю с него письмо безо всяких данных $_POST[]. Просто- пока проверка возможностей прова.
 

neko

tеam neko
пойми тут нет никого кто видел твой скрипт, и тут нет никого кто хочет его видеть.

отлаживай.

я могу конечно поугадывать, например ткнув пальцем в небо сказать, что у тебя register_globals on, и в скрипте используются какие-нибудь переменные которые пост заменяет.

но это пальцем в небо, а найти реальные ошибки можешь только ты, и больше никто.

отлаживай.

присваивай всем переменным в скрипте начальные значения --всегда.
между какими-то промежуточными действиями var_dump() -- выводишь значения переменных, если у тебя есть сомнения что в них не то, что ты задумал.

проверяй ВСЕ возвращаемые функциями значения.
все без исключения, какой бы тривиальной функция не была
никаких собак, ты отлаживаешь, не забывай этого
 

Стас

Троечник
Спасибо, но я никому не предлагал смотреть мой скрипт. Я всего лишь говорил о его алгоритме. Если я правильно понял, то пров. вообще блокировал выполнение скриптов, обращающихся к 25 порту. По крайней мере, в ответ на мое письмо он потребовал обоснования вызова ф-ции mail(...).
Пы.Сы.
Почему не работал с методом пост- это тоже разобрался: постом не на ту страницу уходил(со сна не посмотрел адрес).
 

AHTIXPICT

Новичок
Автор оригинала: Стас
Если я правильно понял, то пров. вообще блокировал выполнение скриптов, обращающихся к 25 порту. По крайней мере, в ответ на мое письмо он потребовал обоснования вызова ф-ции mail(...)
Интересно, как ты себе представляешь - "пров. вообще блокировал выполнение скриптов, обращающихся к 25 порту".
Причина не в "прове" а в скрипте.
 

Стас

Троечник
Я себе это не представляю. Я это знаю. В переписке с ними, ясно сказано: Отправка писем через mail(...) или другими способами невозможна.
 

AHTIXPICT

Новичок
Автор оригинала: Стас
Я себе это не представляю. Я это знаю. В переписке с ними, ясно сказано: Отправка писем через mail(...) или другими способами невозможна.
Ну допустим, что с помощю mail(...) у тебя не получится только потому , что у провайдера в php.ini указаны неправильные настройки.
Но через fsockopen(...) кто тебе мешает это сделать???
Ты же
telnet ip_провайдера 25
заходишь (я уверен что заходишь, а то как бы ты вообще почту отсылал).
Следовательно дальше дело только в скрипте.
Ссылочка тебе по смтп, может пригодится:
http://www.loe.lg.ua/data/unit/smtp.txt
и поп3 там тоже есть:http://www.loe.lg.ua/data/unit/pop3.txt
 

AHTIXPICT

Новичок
Не за что.
Если она тебе поможет - будет вообще замечательно.
Посмотри там на функцию:

function send($server, $to, $from, $subject="", $headers="")

Она там самая основная.
А клас поп3 - еще не совсем дописан - это для общего развития.
 
Сверху