форум вебмастероff на AlfaSpace.NET |
Ubuntu и Linux
|реактивный бесплатный хостинг
| Киноклуб. ВСЁ БЕСПЛАТНО!
база знаний хостинга
|
правила форума
| Начало ° Ответить ° Статистика ° Опрос ° Регистрация ° Поиск ° FAQ ° |
| Форум вебмастеров на AlfaSpace.NET / Служба спасения 911 / Помогите плиз с функцией mail... |
| Автор | Сообщение |
| antant Участник 7 |
# Дата: 14 Авг 2005 15:40 Насколько понял, здесь функция mail отключена. У кого-нить есть рабочие скрипт и класс для отправки мыла с alfaspace.net через сторонний smtp сервер с авторизацией? Перерыл кучу инфы в нете, но рабочего примера так и не нашел. Времени разбираться с синтаксисом классов и MIME нет, а очень нужно отправлять почту на мыло. Помогите плиз... |
| Анна Участник 2900 |
# Дата: 14 Авг 2005 18:38 antant http://forum.alfaspace.net/index.php?action=vthread&forum=1&topic=1064 |
| antant Участник 7 |
# Дата: 15 Авг 2005 13:19 ° Поправил: antant Anna А вы им успешно пользовались? У меня он не работает. Насколько я понял, скрипт предназначен для "переправки" файлов с инета на мыло. Но в любом случае спасибо. PS. Кстати, авторизацию на smtp-сервере в скрипте я не нашел. |
| Константин TorrentMaster 3534 |
# Дата: 15 Авг 2005 14:02 antant Он именно для этого и предназначен - говорю это как автор этого скрипта. Не работает потому, что не завел файл с md5 от юзернайм и c md5 от разрешенных для него e-mail'ов и не положил их в папки secure и users соответственно. |
| Константин TorrentMaster 3534 |
# Дата: 15 Авг 2005 14:03 Кстати, авторизацию на smtp-сервере в скрипте я не нашел. А ее там и нет - скрипт создавался изначально под сервак star.math.spbu.ru - там авторизация не нужна. |
| Константин TorrentMaster 3534 |
# Дата: 15 Авг 2005 14:08 antant Если тебе очень сильно надо отправлять письма через сервак с авторизацией, то кинь в этот топик его адрес + если на нем недоступна регистрация простым смертным, то еще рабочий логин и пароль. Тогда если будет время напишу специально для тебя скрипт отправки почты через этот сервак. |
| antant Участник 7 |
# Дата: 15 Авг 2005 23:37 Deflector Ок, письма нужно отправлять через любой smtp - mail.ru, yandex.ru и т.п. Просто почему с авторизацией - если вдруг smtp откажет в работе, по любым причинам, можно было быстро переключится на другой. Если можно это сделать, то буду только благодарен. Или подобный скрипт пишется под каждый smtp отдельно? |
| Константин TorrentMaster 3534 |
# Дата: 16 Авг 2005 04:48 antant Или подобный скрипт пишется под каждый smtp отдельно Не совсем - просто система команд воспринимаемых смтп серверами не совсем стандартизирована - есть свои отклонения - учесть их все нереально. Под mail.ru и yandex.ru напишу и протестирую. Но не обещаю что очень быстро - времени на это не слишком много. |
| Timon Участник 382 |
# Дата: 16 Авг 2005 10:13 http://forum.alfaspace.net/index.php?action=vthread&forum=6&topic=720 |
| Timon Участник 382 |
# Дата: 16 Авг 2005 10:14 Но это для IPB... может и к другим пригодно... |
| Константин TorrentMaster 3534 |
# Дата: 16 Авг 2005 10:58 Но это для IPB... может и к другим пригодно... А кто сказал, что возможность отправки писем yадо прикручивать именно к форуму? По-моему atlant хочет независимый скрипт, или я не прав? |
| antant Участник 7 |
# Дата: 16 Авг 2005 11:38 Timon Спасибо, но в том то и проблема, что времени сейчас нет, и копаться в исходниках IPB, разбираться что нужно и не нужно для отправки на smtp, тоже нет. Когда время появится, разберусь конечно, но скорее всего, что к тому времени уже на платный переползать нужно будет :)) |
| antant Участник 7 |
# Дата: 16 Авг 2005 11:43 Deflector Абсолютно прав. Интересно, как почтовые клиенты могут работать практически с любыми smtp/pop3 серверами по адресу и порту. Они что, несколько стандартных наборов команд прокручивают? Кажется, в моем случае будет проще найти smtp без авторизации. |
| Timon Участник 382 |
# Дата: 16 Авг 2005 12:05 Я не прикручивал ничего и это не скрипт- я просто показал, как можно это натроить там... Возможно я не понял вопроса. :_( |
| Константин TorrentMaster 3534 |
# Дата: 16 Авг 2005 12:50 antant Наборов команд не несколько - их один, но с некоторыми отклонениями. Пример: mail.ru воспринимает helo *** как успешное приветствие, а yandex.ru - нет - он пишет нечто типа "Expected HELO "<ip адрес с точками замененными на тире>"" Впрочем иногда можно обойтись и без helo. Скрипт отправки с авторизацией почти готов - видимо через 50 минут выложу |
| Константин TorrentMaster 3534 |
# Дата: 16 Авг 2005 13:01 ° Поправил: Константин Вот скрипт: http://defwww2mail.alfaspace.net/defsmtpsender.zip.tmp Но я его не успел оттестировать - тестируй сам После скачивания убрать из конца расширение .tmp и оставить .zip |
| Константин TorrentMaster 3534 |
# Дата: 16 Авг 2005 13:27 только учти что на мэил.ру в качестве user надо использовать полный адрес е-маил, а на яндексе - просто свой логин |
| antant Участник 7 |
# Дата: 16 Авг 2005 23:44 ° Поправил: antant Deflector Ок, спасибо. Результаты: mail.ru, yandex.ru - письма не дошли, хотя функция возвр-ет true. |
| Константин TorrentMaster 3534 |
# Дата: 17 Авг 2005 01:44 Ну-у-у true она вернет в любом случае, если смогла вообще соединиться. Почему могли не дойти письма - щас посмотрю - яже говорю я вчера не тестировал скрипт - просто набросал как получится и все (предварительно проверив поддерживаемые серверами команды) |
| Константин TorrentMaster 3534 |
# Дата: 17 Авг 2005 04:43 antant Короче так: скрипт обновил - скачай еще раз по тому же линку. Через маил.ру протестировал - отправляет. Добавил в архив файл smtptester.php - чтобы ты сам в этом убедился. В сам скрипт добавил вывод ответов сервера - как только убедишися, что все работает, удали все echo. По поводу яндекса - он требует специального параметра после helo - поэтому я его добавил в объявление функции как $helostring - как ты его будешь получать - это уже твое дело (как вариант - запусти с любым хелострингом и посмотри на ответ сервака - он скажет, какой хелостринг ему нужен) Пофиксен баг - теперь сокет закрывается после окончания работы скрипта. Вот тебе тестовые логины и пароли на мэил и яндекс: testlog7788 testpas7788 но на мэиле надо вместо этого писать testlog7788@list.ru Буду рад, если отпишешься сюда о результатах тестирования. |
| antant Участник 7 |
# Дата: 27 Авг 2005 15:11 ° Поправил: antant Deflector Извини, что долго не отвечал. Материнка приказала долго жить, пришлось апгрейдить весь комп. Тест скрипта прошел отлично.
Сэнкью вери мач. Жаль, здесь пиво нельзя поставить ![]() |
| studioab Участник 4 |
# Дата: 28 Авг 2005 02:37 Спасибо добрым людям. Скриптик то работает отлично
вот только пришлось добаваить поле SUBJECT. тестовая рассылка на 10 адресов прошла отлично. работает также с км яндекс рамблер даже с AOL ![]() |
| Андрей Алексеевич 2123 |
# Дата: 28 Авг 2005 04:15 Deflector Молодец! ![]() |
| ntking Участник 252 |
# Дата: 16 Ноя 2005 07:18 ° Поправил: ntking Deflector Мой аккаунт на вебсервайс убили (источник функции mail() ), заюзал твой скрипт - работает АФИГЕННО просто! Огромное за него спасибо! P.S. А нельзя никак примутить к скрипту Тему письма? |
| Константин TorrentMaster 3534 |
# Дата: 16 Ноя 2005 12:11 ntking Можно
Вот тебе пример генерации письма: $messagebody=""; $un = strtoupper(uniqid(time())); $messagebody .= "From: $from\n"; $messagebody .= "To: $to\n"; $messagebody .= "Subject: $subject\n"; //тут тема $messagebody .= "Reply-To: $from\n"; $messagebody .= "Mime-Version: 1.0\n"; $messagebody .= "Content-Type:multipart/mixed; boundary=\"d----------".$un."\"\n\n"; $messagebody .= "--d----------".$un."\n"; //первая секция данных - первое вложение $messagebody .= "Content-Type: application/octet-stream; name=\"".basename("information.txt")."\"\n"; $messagebody .= "Content-Transfer-Encoding: base64\n"; $messagebody .= "Content-Disposition: attachment; filename=\"".basename("information.txt")."\"\n\n"; $messagebody .= base64_encode($message)."\n"; $messagebody .= "--d----------".$un."\n"; $messagebody .= "Content-Type: application/octet-stream; name=\"".basename($filename)."\"\n"; ..вторая секция данных - второе вложение $messagebody .= "Content-Transfer-Encoding: base64\n"; $messagebody .= "Content-Disposition: attachment; filename=\"".basename($filename)."\"\n\n"; $attach = base64_encode($attachment); $messagebody .= $attach."\n"; $messagebody .= "--d----------".$un."--\n"; вместо вложений можно писать обычный текст - так что убери лишнее |
| ntking Участник 252 |
# Дата: 16 Ноя 2005 16:08 fputs($socket,"Subject: $subject\n$message\r\n.\r\n"); Чуть поправил и заработало, большое спасибо! Теперь почта отправляется у меня прямо с сайта [а не через сторонний хостинг с функцией mail()]... |
|
Powered by miniBB forum software © 2001-2009
Powered by miniBB-gzipper. Original size:42535, gzipped size:11652 |