X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость ( Вход | Регистрация )

Открыть тему
Тема закрыта
> Пример использования фунции Mail(), Форма обратной связи
zetx
zetx
Topic Starter сообщение 20.2.2010, 13:21; Ответить: zetx
Сообщение #1


Участник
***

Группа: Banned
Сообщений: 211
Регистрация: 9.8.2009
Из: Россия
Поблагодарили: 15 раз
Репутация:   8  


Как посоветуете сделать форму обратной связи, чтобы во всех почтовых клиентах кодировка письма и темы отображались нормально.
Можете привести пример кода вашей обратной связи.

Заранее спасибо.
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
LaeX
LaeX
сообщение 20.2.2010, 13:53; Ответить: LaeX
Сообщение #2


Участник
***

Группа: User
Сообщений: 163
Регистрация: 2.10.2009
Поблагодарили: 81 раз
Репутация:   25  


Вот кусок кода из моей ф-ции:

<?
$to_name = "Адмын";
$to_email = "admin@МойСайт.ru";
$from_name = $_POST['fName'];
$from_email = $_POST['fEmail'];
$subject = $_POST['fSubject'];
$message = $_POST['fMessage'];

$to_name = '=?koi8-r?B?'.base64_encode(convert_cyr_string($to_name, "w","k")).'?=';
$from_name = '=?koi8-r?B?'.base64_encode(convert_cyr_string($from_name, "w","k")).'?=';
$subject = '=?koi8-r?B?'.base64_encode(convert_cyr_string($subject, "w","k")).'?=';

$to = "$to_name <$to_email>";
$header .= "From: $from_name <$from_email>\r\n";
$header .= "MIME-Version: 1.0\r\n";
$header .= "X-Mailer: Web Mail [ http://ilaex.ru ]\r\n";
$header .= "Content-Type: text/plain; charset=windows-1251\r\n";
$header .= "Content-Transfer-Encoding: 8bit";

mail($to,$subject,$message,$header;
?>

Работает нормально, не жалуюсь )


--------------------
ICQpix — лучшие информеры ICQ статуса
Ѡ VDS за $2.99 (реф.) → 512/1024MB RAM, 50 GB HDD, полноценный SWAP


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
n1tr1k
n1tr1k
сообщение 20.2.2010, 13:57; Ответить: n1tr1k
Сообщение #3


Любитель BMW и бекона :)
*****

Группа: Active User
Сообщений: 767
Регистрация: 17.1.2009
Из: Saint-Petersburg
Поблагодарили: 266 раз
Репутация:   65  


zetx, если интересует, могу скинуть скриптик обратной связи с возможностью прикрепления файла. Скрипт называется PHMailer, но он заточен под запад. Я его исправил на свой лад - теперь он дружит с кириллицей smile.gif


--------------------
ICQ: 494-420
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
zetx
zetx
Topic Starter сообщение 20.2.2010, 14:40; Ответить: zetx
Сообщение #4


Участник
***

Группа: Banned
Сообщений: 211
Регистрация: 9.8.2009
Из: Россия
Поблагодарили: 15 раз
Репутация:   8  


LaeX, n1tr1k, спасибо...мне просто надо разобратся, почему в моем скрипте проблемы с кодировкой возникают. Вот и хочу посмотреть на другие готовые решения.

Сейчас потестирую код, приведенный выше.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ice10
ice10
сообщение 20.2.2010, 14:41; Ответить: ice10
Сообщение #5


Бывалый
****

Группа: User
Сообщений: 276
Регистрация: 13.1.2010
Из: a17c74
Поблагодарили: 89 раз
Репутация:   7  


Кидаю мой, уже много где вставил, все довольны:
<?php
// если была нажата кнопка "Отправить"
if($_POST['submit'])
{
if (($_POST['mess01'] != '') && ($_POST['mess04'] != '') && ($_POST['mess06'] != '') && ($_POST['mess07'] != ''))
{
//!--elseif  ($_POST['mess01'] != '');
//{
//elseif ($_POST['mess03'] != '');
//{
//elseif ($_POST['mess04'] != '');
//{
//elseif ($_POST['mess06'] != '');
//{
//elseif ($_POST['mess'] != '');
//{-->
        // $_POST['title'] содержит данные из поля "Тема", trim() - убираем все лишние пробелы и переносы строк, htmlspecialchars() - преобразует специальные символы в HTML сущности, будем считать для того, чтобы простейшие попытки взломать наш сайт обломались, ну и  substr($_POST['title'], 0, 1000) - урезаем текст до 1000 символов. Для переменной $_POST['mess'] все аналогично
        $title = 'Новая заявка на мопед';
        $mess =   ' Имя:  ' . substr(htmlspecialchars(trim($_POST['mess01'])), 0, 20)  . "\n" . ' Мыло:  ' . substr(htmlspecialchars(trim($_POST['mess04'])), 0, 20) . "\n" . ' Модель Мопеда:  ' . substr(htmlspecialchars(trim($_POST['mess07'])), 0, 20) . "\n" . ' Телефон:  ' .
substr(htmlspecialchars(trim($_POST['mess06'])), 0, 500) .  "\n" . ' Сообщение: ' . substr(htmlspecialchars(trim($_POST['mess'])), 0, 1000000);
        // $to - кому отправляем
        
        $to = 'info@retromoped.net';      
        // $from - от кого
        $from='Администрация Ретромопедов';
        // функция, которая отправляет наше письмо.
        mail($to, $title, $mess, 'From:'.$from);
        echo '<center>Спасибо! Ваше письмо отправлено.</center>';
}
//<!--}}}}}-->
else echo "Пожалуйста, заполните все поля";

}
?>
<form action="" method=post>

<center>
  <p> Пожалуйста, оставьте вашу заявку в форме ниже, заполнив все поля</p></center>
              <div align="center">
              <p>Имя</p>       <input type="text" name="mess01" size="40"><p></p>
              <p>E-mail </p>
              <p><input type="text" name="mess04" size="40"></p><p></p>
              <p>Телефон</p>     <p><input type="text" name="mess06" size="40"></p><p></p>
              <p>Модель мопеда</p>     <p><input type="text" name="mess07" size="40"></p><br />
              <br />
              <p>Дополнительная информация (по желанию)</p>
              <textarea name="mess" rows="10" cols="60"></textarea><br />
      <input type="submit" value="Отправить" name="submit"></div>
</form>


Исходник не мой, доточил проверку ввода полей, title так же можно сделать вводимым пользователем, в общем, если что, обращайтесь


--------------------
ушел в себя
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
zetx
zetx
Topic Starter сообщение 20.2.2010, 14:53; Ответить: zetx
Сообщение #6


Участник
***

Группа: Banned
Сообщений: 211
Регистрация: 9.8.2009
Из: Россия
Поблагодарили: 15 раз
Репутация:   8  


(LaeX @ 20.2.2010, 11:53) *
Вот кусок кода из моей ф-ции:

<?
$to_name = "Адмын";
$to_email = "admin@МойСайт.ru";
$from_name = $_POST['fName'];
$from_email = $_POST['fEmail'];
$subject = $_POST['fSubject'];
$message = $_POST['fMessage'];

$to_name = '=?koi8-r?B?'.base64_encode(convert_cyr_string($to_name, "w","k")).'?=';
$from_name = '=?koi8-r?B?'.base64_encode(convert_cyr_string($from_name, "w","k")).'?=';
$subject = '=?koi8-r?B?'.base64_encode(convert_cyr_string($subject, "w","k")).'?=';

$to = "$to_name <$to_email>";
$header .= "From: $from_name <$from_email>\r\n";
$header .= "MIME-Version: 1.0\r\n";
$header .= "X-Mailer: Web Mail [ http://ilaex.ru ]\r\n";
$header .= "Content-Type: text/plain; charset=windows-1251\r\n";
$header .= "Content-Transfer-Encoding: 8bit";

mail($to,$subject,$message,$header;
?>

Работает нормально, не жалуюсь )


Вот в каком виде пришло сообщение, отправленное этим скриптом:



аа..кажется понял в чем дело
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
LaeX
LaeX
сообщение 20.2.2010, 14:56; Ответить: LaeX
Сообщение #7


Участник
***

Группа: User
Сообщений: 163
Регистрация: 2.10.2009
Поблагодарили: 81 раз
Репутация:   25  


Только-что проверил отправить письмо в GMail — все нормально.


--------------------
ICQpix — лучшие информеры ICQ статуса
Ѡ VDS за $2.99 (реф.) → 512/1024MB RAM, 50 GB HDD, полноценный SWAP
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ice10
ice10
сообщение 20.2.2010, 15:03; Ответить: ice10
Сообщение #8


Бывалый
****

Группа: User
Сообщений: 276
Регистрация: 13.1.2010
Из: a17c74
Поблагодарили: 89 раз
Репутация:   7  


(zetx @ 20.2.2010, 13:53) *
Вот в каком виде пришло сообщение, отправленное этим скриптом

А кодировка, в которой сохраняется сам php-файл какая?


--------------------
ушел в себя
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
zetx
zetx
Topic Starter сообщение 20.2.2010, 15:04; Ответить: zetx
Сообщение #9


Участник
***

Группа: Banned
Сообщений: 211
Регистрация: 9.8.2009
Из: Россия
Поблагодарили: 15 раз
Репутация:   8  


Проблема была в кодировке самого файла. Уже решил проблему. Всем спасибо.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Естественные ссылки в системе ответов Mail.ru
Качественные ссылки с уникальным околоссылочным текстом
18 Vsevseo 2554 13.12.2017, 19:24
автор: Gelik
Открытая тема (нет новых ответов) Новости mail.ru появятся в "рекомендациях" Вконтакте?
19 eduarddis 2785 12.12.2017, 20:37
автор: galikfor
Открытая тема (нет новых ответов) Mail.Ru Group выпустила «убийцу» жестких дисков
20 jack 3334 12.12.2017, 11:15
автор: Neurotechnic
Открытая тема (нет новых ответов) Продам облако mail.ru на 1TB
2 seo_top 877 16.11.2017, 21:08
автор: seo_top
Открытая тема (нет новых ответов) Продам прокаченные аккаунты для otvet.mail.ru, ответы майл.ру
14 Стэнли 4147 15.11.2017, 14:47
автор: SeoKot


 



RSS Текстовая версия Сейчас: 15.12.2017, 18:33
Дизайн