Как отправить письмо с сайта
|
|
andarky | Дата: Суббота, 15 Декабря 2012, 21:07 | Сообщение # 1 |
старожил
Сейчас нет на сайте
| У меня 2 аккаунта на Hostinger.ru РНР-скрипты работают (проверено гостевухой).
Я завел почтовый ящик к своему аккаунту перепробовал более 10 разных скриптов: некоторые честно пишут НЕ СРАБОТАЛ СКРИПТ ну или другую ошибку а некоторые - УСПЕШНО ОТПРАВЛЕНО - а ящики пустые... (я себе на Gmail отправлял) в спаме тоже нет...
РНР я незнаю, покопался в скриптах и понял что везде ф-ция mail() это делает. еще какие методы SMTP есть но я там ничего не понял...
вообще ОТПРАВКА ПИСЕМ С САЙТА на Hostinger.ru (бесплатный тариф) это возможно?
или что мне тогда делать?
Моя страничка по дизайну GameDev//Design//3D Ютубчик
|
|
| |
lvovand | Дата: Суббота, 15 Декабря 2012, 21:34 | Сообщение # 2 |
старожил
Сейчас нет на сайте
| а что функция mail() возвращает? может gmail просто не хочет принимать письма конкретно от данного сайта
Разработка и продвижение сайтов. Дизайн
|
|
| |
TimKruz | Дата: Суббота, 15 Декабря 2012, 22:55 | Сообщение # 3 |
старожил
Сейчас нет на сайте
| andarky, на хостингере жёсткие ограничения на функции отправки почты. Это чтобы нельзя было на бесплатном тарифе сделать спам-бота. Платные тарифы, скорей всего, не имеют таких ограничений, или они более мягкие. Вот ограничения бесплатного тарифа: Quote Массовая рассылки писем запрещена на наших серверах. Работа аккаунта будет остановлена. Вы можете отсылать до 100 писем в час (2400 писем в день). Также, Вы не можете отсылать больше чем 30 писем на протяжении 5 минут. Однако, мы разрешаем Вам отсылать 20 писем в минуту используя php функцию mail() и это не входит в ограничения, которые описаны выше.
Почтовый сервер 100% должен принимать правильно отправленные письма; возможно, ты их неправильно отсылаешь. Покажи-ка свой код... Может, ты оформляешь письмо так, что оно похоже на спам, а в твоём ящике включена автоматическая очистка спама...
|
|
| |
andarky | Дата: Пятница, 11 Января 2013, 15:28 | Сообщение # 4 |
старожил
Сейчас нет на сайте
| TimKruz, у меня заработало Код $name=$_POST['name']; $email=$_POST['email']; $subject=$_POST['subject']; $message=$_POST['message']; $to="anroiddext@bk.ru"; if ($name && $email && $message) { $message="$name этот написал, его email: $email. Тема письма: $subject \n сообщение: \n $message"; $mail = mail($to, $subject, $message, "From: $email Content-type: text/plain; charset=windows-1251"); }
НО! из кода видно: anroiddext@bk.ru а мне надо andarkya@Gmail.com - что НИКАК не работает...
и РУССКИЙ текст тоже не работает. Латиница и цифры приходят на MAILовский ящик
и еще (небольшая проблемка): в конце ставится кусок кода Content-type: text/plain; charset=windows-1251 я это с форума HOSTINGER.RU содрал, как исправить?
Моя страничка по дизайну GameDev//Design//3D Ютубчик
|
|
| |
friend | Дата: Пятница, 11 Января 2013, 15:50 | Сообщение # 5 |
почетный гость
Сейчас нет на сайте
| Цитата (andarky) и еще (небольшая проблемка): в конце ставится кусок кода Content-type: text/plain; charset=windows-1251 я это с форума HOSTINGER.RU содрал, как исправить? что исправить? можешь в место windows-1251 выставить utf-8, тогда проблемы с Русскими буквами должны пропасть. читать оф справку не пробовал?
|
|
| |
andarky | Дата: Пятница, 11 Января 2013, 16:18 | Сообщение # 6 |
старожил
Сейчас нет на сайте
| friend, да это я уже пробовал - вообще биллибирда приходит. И вообще месяц назад делал флеш сайт с отправкой писем (ПХП не я писал) так вот тогда у нас была обратная проблема - меня просили чтоб флеш выдавал 1251 потомучто у заказчика MAIR.RU-адрес
вот у меня щас всё работает на MAIR.RU (anroiddext@bk.ru) все приходит, только без русского (даже биллибирда не приходит) на латинице ОК
Моя страничка по дизайну GameDev//Design//3D Ютубчик
|
|
| |
friend | Дата: Пятница, 11 Января 2013, 16:32 | Сообщение # 7 |
почетный гость
Сейчас нет на сайте
| andarky, почитай про функцию iconv() может она поможет. по гуглив нашел вот такую функцию, по пробуй Код function mail_utf8($to, $from, $subject, $message) { $subject = '=?UTF-8?B?' . base64_encode($subject) . '?='; $headers = "MIME-Version: 1.0\r\n"; $headers .= "Content-type: text/plain; charset=utf-8\r\n"; $headers .= "From: $from\r\n"; return mail($to, $subject, $message, $headers); } // пример использования mail_utf8('to-user@gmail.com', 'no-reply@example.ru', 'Заголовок сообщения', 'Текст сообщения');
Сообщение отредактировал friend - Пятница, 11 Января 2013, 16:35 |
|
| |
dima9595 | Дата: Пятница, 11 Января 2013, 16:49 | Сообщение # 8 |
почти ветеран
Сейчас нет на сайте
| andarky, я конечто не шарю сильно в php, но ты покажи полный скрипт отправки писем...
|
|
| |
andarky | Дата: Среда, 23 Января 2013, 14:48 | Сообщение # 9 |
старожил
Сейчас нет на сайте
| вот код: Код <?php $q=$_POST['q']; if ($q) { $name=$_POST['name']; $email=$_POST['email']; $subject=$_POST['subject']; $message=$_POST['message']; $to="anroiddext@bk.ru"; if ($name && $email && $message) { $message="$name этот написал, его email: $email. Тема письма: $subject \n сообщение: \n $message"; $mail = mail($to, $subject, $message, "From: $email Content-type: text/plain; charset=UTF-8"); } } ?> <html> <body> <form action="" method="post"> <table> <tr> <td> Ваше имя* </td> <td> <input type="text" name="name"> </td> </tr> <tr> <td> Ваш еmail* </td> <td> <input type="text" name="email"> </td> </tr> <tr> <td> Тема письма </td> <td> <input type="text" name="subject"> </td> </tr> <tr> <td valign="top"> Сообщение* </td> <td> <textarea name="message"> </textarea> </td> </tr> <tr> <td> <input type="submit" value="Отправить"> </td> </tr> <tr> <td colspan=2> <?php if ($q) { if (!$name || !$email || !$message) echo "Пожалуйста, заполните все обезятельные поля"; else if ($mail) echo "Письмо успешно отправлено"; } ?> </td> </tr> </table> <input type="hidden" name="q" value="1"> </form> </body> </html> Добавлено (23.01.2013, 14:48) --------------------------------------------- никто ничем не поможет?
Моя страничка по дизайну GameDev//Design//3D Ютубчик
|
|
| |
lvovand | Дата: Среда, 23 Января 2013, 15:27 | Сообщение # 10 |
старожил
Сейчас нет на сайте
| попробуй не просто mail() вызывать, а использовать библиотеку PHPMailer тогда можно будет авторизоваться на каком-нибудь smtp-сервере и через него отправлять
Разработка и продвижение сайтов. Дизайн
|
|
| |
EApps | Дата: Среда, 23 Января 2013, 16:22 | Сообщение # 11 |
был не раз
Сейчас нет на сайте
| Как-то так: Код <?php header("Content-Type: text/html; charset=utf-8"); if($_POST['submit']) { $to = 'andarkya@gmail.com'; $U_MESSAGE = ''; if(!$_POST['mail']) $U_MESSAGE .= "Введите ваш адрес электронной почты.<br>\n"; if(!$_POST['message']) $U_MESSAGE .= "Напишите сообщение.<br>\n"; if(!$_POST['subject']) $U_MESSAGE .= "Укажите тему письма.<br>\n"; if(!$_POST['name']) $U_MESSAGE .= "Укажите ваше имя.<br>\n"; if($U_MESSAGE == '') { $message = "От: " . $_POST['name'] . " <" . $_POST['mail'] . ">\n" . $_POST['message']; $headers = "From: " . $_POST['name'] . " <" . $_POST['mail'] . ">; Content-Type: text/plain; charset=KOI8-R"; if(mail($to, $_POST['subject'], $message, $headers)) { $U_MESSAGE .= "Письмо успешно отправлено."; $_POST = array(); } else $U_MESSAGE .= "При отправке письма возникла ошибка"; } } ?> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> </head> <body> <form method="post"> <table> <tr><td colspan="2"><?=$U_MESSAGE?></td></tr> <tr><td>Тема письма:</td><td><input type="text" name="subject" value="<?=$_POST['subject']?>"></td></tr> <tr><td>Ваше имя:</td><td><input type="text" name="name" value="<?=$_POST['name']?>"></td></tr> <tr><td>Ваш e-mail:</td><td><input type="text" name="mail" value="<?=$_POST['mail']?>"></td></tr> <tr><td colspan="2">Cообщение:<br><textarea name="message"><?=$_POST['message']?></textarea></td></tr> <tr><td colspan="2" style="text-align: center;"><input type="submit" name="submit" value="Отправить письмо"></td></tr> </table> </form> </body> </html> Проверил, на мою gmail-почту письма успешно приходят. Обязательно в своей почте проверяйте папку "спам", вполне вероятно что gmail письма с вашего хостинга автоматом туда отправляет.
|
|
| |
andarky | Дата: Среда, 23 Января 2013, 16:24 | Сообщение # 12 |
старожил
Сейчас нет на сайте
| EApps, спасибо! Вечером попробую...
Моя страничка по дизайну GameDev//Design//3D Ютубчик
|
|
| |