Ответить на тему  [ Сообщений: 34 ] 
На страницу 1, 2, 3, 4  След.
Форма обратной связи+кодировка UTF-8 
Автор Сообщение
Новичок
Аватар пользователя

Зарегистрирован: 29 мар 2009, 02:42
Сообщений: 20
Репутация: 10
Добавить пункт репутацииВычесть пункт репутации
Сообщение Форма обратной связи+кодировка UTF-8
По мотивам урока про форму обратной связи с защитой от автороботов :)

1. Кодировка.
Приходит письмо с кракозябрами, типа "Пользователь Сергей отправил вам письмо с сайта "Тест" со следующим содержанием:

Случайная цитата:
В каждой сказке есть намек о том, чтоб быль не путали со сказкой. В каждой сказке есть урок, что жизнь мы сами делаем прекрасной...
(Владимир Борисов)
"
И если ответить на это, то ответ будет тоже в кракозябрах (по крайнем мере, в the bat)
А вот написанное translitom читается нормально, хотя и неудивительно :)

На getmail.php та же беда - сообщение выводит в зябрах.
Вот тут:
Код:
  if(!@mail($admail, $subject, $content, "From: $email", "Content-type:text/plain; charset=windows-1251\r\n"))

на utf-8 менял - без результатов
русские коменты отовсюду удалил - без результатов

(после танцев с бубном письмо все же можно будет прочитать, но...)

2. Капча.
А чу, цифры не меняются? :(

3. Письма должны моментально приходить или через какой-то период?


30 апр 2009, 01:39
Профиль Отправить личное сообщение
Администратор
Аватар пользователя

Зарегистрирован: 20 фев 2009, 01:38
Сообщений: 3159
Пол: мужской
Репутация: 3514
Добавить пункт репутацииВычесть пункт репутации
Сообщение Re: Форма обратной связи
Спасибо, что указали мне на ошибку,т.е. что не меняются числа. Я забыл это добавить в урок, уже почти переделал, и через пару часов выложу обновленную версию :)
Вот мои коменты, которые будут в новом уроке:

Цитата:
ВНИМАНИЕ!!! чтобы скрипт нормально работал, Вы должны обязательно включить php на html страницах.

Как это сделать читайте здесь http://www.zvirec.com/view_post.php?id=34 .

Если вдруг вариант описанный выше не сработает, просто измените расширение страницы с html на php .
Т.е. если у Вас была страница contact.html переименуйте в contact.php

1. Загрузите папку mail, с файлами скрипта,в корневую директорию сайта

2. Выполните все необходимые настройки скрипта, подредактировав файл config.inc ,
находящийся внутри папки mail

3. Скопируйте код Формы, из текстового документа, и вставьте его в нужную страницу Вашего сайта.
Проследите, чтобы путь к обработчику формы, был прописан правильно, иначе ничего работать не будет.

4. Для корректного отображения формы необходимо подключить файл стилей к странице, на которую
Вы собираетесь устанавливать форму. Файл стилей называется style.css и лежит внутри папки mail .
Для этого, просто вставьте в голову документа (между тегами <head> и </head>) следующую строку:

<link rel="stylesheet" type="text/css" href="mail/style.css" />


, где mail/style.css - путь к файлу стилей.



Вот правильный код формы:

Код:
<h1 id="svaz">Обратная связь</h1>
<?php
$num = mt_rand(0, 1243 * 21462);
?>

  <div id="form_mail">
   <form action="mail/getmail.php" method="post"><!-- путь к файлу обтаботчика! -->
    <ul>
     <li>Ваше имя:</li>
     <li><input type="text" name="nick" /></li>
     <li>Ваш E-mail:</li>
     <li><input type="text" name="email" /></li>
     <li>Сообщение:</li>
     <li><textarea name="msg" cols="50" rows="4"></textarea>
     </a></li>
     <li>Введите текст с картинки:</li>
      <li><?php echo "<img src=\"mail/captcha.php?text=$num\" alt=\"captcha\" />"; ?></li>
     <li><?php echo "<input type=\"hidden\" name=\"num\" value=\"$num\" />"; ?><input type="text" name="captcha" /></li>
     <li><input type="submit" value="Отправить!" id="submit_mail" /></li>
     </ul>
   </form>
</div>


Что касается кодировки, то все должно быть нормально. Возможно у Вас на странице не кириллица, и поэтому возникает какой-то конфликт.
Что касается времени отправки, вообще должно отправлятся мгновенно, но иногда бывают задержки из-за хостинга (обычно это 30 секунд -2 минуты) , это с любым хостером такое бывает...

_________________
Лучший хостинг по соотношению цена/качество! Бесплатный тестовый доступ 10 дней

Любой сайт обязан приносить прибыль! узнай как! видео-инструкция по работе прилагается!

Здесь раскрутить сайт сможет даже ребенок! Не верите? - а Вы попробуйте!


30 апр 2009, 10:47
Профиль Отправить личное сообщение
Новичок
Аватар пользователя

Зарегистрирован: 29 мар 2009, 02:42
Сообщений: 20
Репутация: 10
Добавить пункт репутацииВычесть пункт репутации
Сообщение Re: Форма обратной связи
Андрей Галямов писал(а):
Вот правильный код формы:

8-)
Андрей Галямов писал(а):
Что касается кодировки, то все должно быть нормально. Возможно у Вас на странице не кириллица, и поэтому возникает какой-то конфликт.

У меня на юникоде...
Код:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

Потестил еще с другого компа - на этот раз письмо отображается наоборот:
Цитата:
Ïîëüçîâàòåëü Жена твоя!! îòïðàâèë âàì ïèñüìî ñ ñàéòà "Êîòà" ñî ñëåäóþùèì ñîäåðæàíèåì:

Ты хде сабака шлялся всю ночь а??? И пачиму помада на рубашке???

:shock: :oops: :twisted: :P
Но дело в том, что само сообщение-то на юникоде.
Вроде.
Только каком-то неправильном, потому что по умолчанию стоит кодировка юникод, но если в выборе кодировки еще раз кликнуть "юникод", то страничка обновится и нормально-отображаемый-текст и кракозябры поменяются местами.
Может быть, надо где-то дополнительно прописать, что charset=utf-8" ?
Просто странно - часть текста кракозябрами, часть - нормально...
Андрей Галямов писал(а):
Что касается времени отправки, вообще должно отправлятся мгновенно, но иногда бывают задержки из-за хостинга (обычно это 30 секунд -2 минуты) , это с любым хостером такое бывает...

SpaceWeb, по Вашей рекомендации :)
Пока все отлично, мне нравится, а сообщения... ну и пофиг на задержку, не критично :)
(хотя такое ощущение, что по IP смотрят (или как-то еще), поскольку первое сообщение прилетает мгновенно)
Я это спросил на случай, вдруг сам где-то напортачил с формой :oops:

p.s. Кстати, а с этим что делать? :oops:


30 апр 2009, 16:08
Профиль Отправить личное сообщение
Администратор
Аватар пользователя

Зарегистрирован: 20 фев 2009, 01:38
Сообщений: 3159
Пол: мужской
Репутация: 3514
Добавить пункт репутацииВычесть пункт репутации
Сообщение Re: Форма обратной связи
Я подумаю над этими вопросами, попоже отвечу.

_________________
Лучший хостинг по соотношению цена/качество! Бесплатный тестовый доступ 10 дней

Любой сайт обязан приносить прибыль! узнай как! видео-инструкция по работе прилагается!

Здесь раскрутить сайт сможет даже ребенок! Не верите? - а Вы попробуйте!


30 апр 2009, 16:26
Профиль Отправить личное сообщение
Администратор
Аватар пользователя

Зарегистрирован: 20 фев 2009, 01:38
Сообщений: 3159
Пол: мужской
Репутация: 3514
Добавить пункт репутацииВычесть пункт репутации
Сообщение Re: Форма обратной связи
а в самом файле обработчика, getmail.php попробуйте поменять кодировку, должно помочь. Вот в этой строчке
Код:
if(!@mail($admail, $subject, $content, "From: $email", "Content-type:text/plain; Charset=windows-1251\r\n"))

_________________
Лучший хостинг по соотношению цена/качество! Бесплатный тестовый доступ 10 дней

Любой сайт обязан приносить прибыль! узнай как! видео-инструкция по работе прилагается!

Здесь раскрутить сайт сможет даже ребенок! Не верите? - а Вы попробуйте!


30 апр 2009, 23:19
Профиль Отправить личное сообщение
Новичок
Аватар пользователя

Зарегистрирован: 29 мар 2009, 02:42
Сообщений: 20
Репутация: 10
Добавить пункт репутацииВычесть пункт репутации
Сообщение Re: Форма обратной связи
Андрей Галямов писал(а):
а в самом файле обработчика, getmail.php попробуйте поменять кодировку, должно помочь. Вот в этой строчке
Код:
if(!@mail($admail, $subject, $content, "From: $email", "Content-type:text/plain; Charset=windows-1251\r\n"))

Так я ж сразу сказал, что менял там )
Попробую еще разок, конечно...

upd: не помогает.
настораживает, что часть-то текста приходит в нормальной кодировке, а вот имя пользователя (если оно на кириллице) и тест сообщения (тоже на кириллице) - кракозябрами

upd2: опаньки, появилась идейка... щас потестим


01 май 2009, 00:32
Профиль Отправить личное сообщение
Новичок
Аватар пользователя

Зарегистрирован: 29 мар 2009, 02:42
Сообщений: 20
Репутация: 10
Добавить пункт репутацииВычесть пункт репутации
Сообщение Re: Форма обратной связи
8-)
надо файлы getmail.php и config.inc.php пересохранить в utf-8 кодировке 8-)


Последний раз редактировалось deckin 01 май 2009, 01:13, всего редактировалось 1 раз.



01 май 2009, 01:01
Профиль Отправить личное сообщение
Администратор
Аватар пользователя

Зарегистрирован: 20 фев 2009, 01:38
Сообщений: 3159
Пол: мужской
Репутация: 3514
Добавить пункт репутацииВычесть пункт репутации
Сообщение Re: Форма обратной связи
deckin писал(а):
надо файлы getmail.php и config.inc.php пересохранить в utf-8 кодировке


ОК. Будем знать. Так что заработало? нормально теперь все? ;)

_________________
Лучший хостинг по соотношению цена/качество! Бесплатный тестовый доступ 10 дней

Любой сайт обязан приносить прибыль! узнай как! видео-инструкция по работе прилагается!

Здесь раскрутить сайт сможет даже ребенок! Не верите? - а Вы попробуйте!


01 май 2009, 10:52
Профиль Отправить личное сообщение
Новичок
Аватар пользователя

Зарегистрирован: 29 мар 2009, 02:42
Сообщений: 20
Репутация: 10
Добавить пункт репутацииВычесть пункт репутации
Сообщение Re: Форма обратной связи
Андрей Галямов писал(а):
deckin писал(а):
надо файлы getmail.php и config.inc.php пересохранить в utf-8 кодировке


ОК. Будем знать. Так что заработало? нормально теперь все? ;)

Да :)


01 май 2009, 18:50
Профиль Отправить личное сообщение
Новичок

Зарегистрирован: 16 мар 2009, 13:02
Сообщений: 32
Репутация: 20
Добавить пункт репутацииВычесть пункт репутации
Сообщение Re: Форма обратной связи+кодировка UTF-8
Здравствуйте , вопрос по обратной связи , почему послле отправки письма у меня не переходит на индексовскую страничку (на главную) , а когда нажимаю отправить, после строчки что мол ваше письмо отправлено, у меня открывается в отдельном окне форма обр связи :( где я мог допустить ошибку , мне надо что бы открывалась главная страничка


01 июн 2009, 13:07
Профиль Отправить личное сообщение
Показать сообщения за:  Сортировать по:  
Ответить на тему   [ Сообщений: 34 ]  На страницу 1, 2, 3, 4  След.
   Похожие темы   Автор   Ответов   Просмотров   Последнее сообщение 
Нет новых непрочитанных сообщений в этой теме Таксономия, типы материалов и связи между ними (каталог услу

в форуме Drupal 6

ll_dr

2

1833

16 сен 2012, 20:31

dmitry_k Перейти к последнему сообщению

Нет новых непрочитанных сообщений в этой теме SOBI2, gallery plugin - пропала форма добавления изображений

в форуме ВНЕШНИЕ РАСШИРЕНИЯ ДЛЯ JOOMLA

verok

0

1692

24 апр 2012, 11:00

verok Перейти к последнему сообщению

Нет новых непрочитанных сообщений в этой теме Денвер выдает Ошибка связи с базой данных

[ На страницу: 1, 2 ]

в форуме PHP , БАЗЫ ДАННЫХ, ЛОКАЛЬНЫЙ СЕРВЕР

Art

12

3815

01 фев 2014, 15:08

Beron Перейти к последнему сообщению

Нет новых непрочитанных сообщений в этой теме Как к комментарию прикрепить форму, так чтобы эта форма отно

в форуме Drupal 7

HarryAscent

0

1013

14 окт 2013, 16:53

HarryAscent Перейти к последнему сообщению

Нет новых непрочитанных сообщений в этой теме Форма Смартриспондер не работает!..помогите выяснить почему.

в форуме РАЗЛИЧНЫЕ СКРИПТЫ И ВНЕШНИЕ ПРИЛОЖЕНИЯ

Элина

4

1171

22 фев 2010, 16:16

Элина Перейти к последнему сообщению


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти: