Дмитрий184
Мастер
Дата регистрации:
29.06.2012 08:48:56
Сообщений: 225
Здравствуйте, Михаил!
Подскажите, пожалуйста, по такому вопросу.
Я создал форму обратной связи, проверил ее в Денвере - и возникла такая проблема.
Когда форма обратной связи находится на веб-странице с кодировкой Windows-1251, то при отправке сообщения, появляется надпись "Сообщение отправлено"
А когда форма обратной связи находится на веб-странице с кодировкой UTF-8, то при отправке сообщения, вместо надписи "Сообщение отправлено" появляются непонятные квадратики, само сообщение отправляется.
В корневом каталоге сайта у меня находится файл .htaccess и сама веб-страница в кодировке UTF-8 отображается хорошо, без всяких непонятных значков.
Надпись "Сообщение отправлено" написана в файл send.php и думаю, тут какая-то проблема с указанием кодировки для PHP.
ilyadenisovid
Мастер
Дата регистрации:
28.01.2013 18:32:29
Сообщений: 213
Укажите кодировку для send.php такую же, что и у других страниц на вашем сайте, или поменяйте кодировку на всех страницах на cp-1251
Admin
Администратор
Дата регистрации:
27.05.2010 21:23:42
Сообщений: 3063
http://myrusakov.ru/php-encoding-problems.html
Дмитрий184
Мастер
Дата регистрации:
29.06.2012 08:48:56
Сообщений: 225
Спасибо советы!
Проблему решил так - в файле PHP была указана кодировка
Content-type:text/plain; charset = windows-1251
Я указал кодировку UTF-8
Content-type:text/plain; charset = utf-8
Потом еще изменил кодировку всего файла, преобразовав его в UTF-8
cap4369
Новичок
Дата регистрации:
18.03.2013 15:34:35
Сообщений: 2
Я еще новичок и у меня возникла та же проблема: при запуске скрипта с кодировкой utf-8, браузер firefox показывал его в кодировке windows-1251. Я в корневой папке в файле .htaccess создал строку: AddDefaultCharset utf-8.
А для изменения кодировки в Denwer(по умолчанию стоит windows-1251) в папке с адресом: c:\WebServers\usr\local\apache\conf\httpd.conf (у меня Денвер установлен на диске C),нашел в файле httpd.conf строку:
AddDefaultCharset windows-1251
И изменил эту настройку следующим образом:
AddDefaultCharset utf-8
Таким вот образом все проблемы кодировок ушли :-)
Дмитрий184
Мастер
Дата регистрации:
29.06.2012 08:48:56
Сообщений: 225
Интересное решение! Можно взять на заметку!
Но тут вот какой еще момент. Можно таким образом "подружиться с Денвером". Но с реальным хостом так не подружишься. Поэтому, если где возникла проблема с кодировкой, то значит где-то что-то не так, и надо находить несоответствие и исправлять без корректировки Денвера, чтобы решить проблему наверняка, а не только на локальном хосте.
cap4369
Новичок
Дата регистрации:
18.03.2013 15:34:35
Сообщений: 2
В общем- то кодировку Денвера(вернее Apache) можно было и не менять. Я таким образом перестраховался. Достаточно файла .htaccess, который является для сервера таким же значимым что и index файл, он выполняется так же в первую очередь. Просто, при работе с PHPMyAdmin необходимо постоянно отслеживать в какой кодировке заносятся данные в таблицы, по умолчанию стоит UTF-8, таким образом я уверен в том, что абсолютно все файлы у меня изначально в одной кодировке. И при переносе данных на удаленный сервер, файл .htacess выполнит свою работу, сообщив этому серверу, что используется такая- то кодировка.