Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Использование кодировки UTF-8
 
 автор: barcelona   (15.12.2007 в 11:57)   письмо автору
 
 

Здравствуйте!
У меня проблема следующего рода. Для того, чтобы мои страницы отображались нормально, мне необходимо их хранить в кодировке utf-8. До этого я работал с windows-1251. Я перевожу страницы следующим образом (знаю, способ топорный, но ...): создаю новую страницу в Notepad, далее "Кодировки"-->"Кодировать в UTF-8" и вставляю содержимое. Тег meta в этих документах (если он присутствует, конечно) я также выставляю utf-8. При такой организации у меня резко перестали работать все проверки на русские буквы (в php-скрипте), я думаю, скрипт их просто не "узнаёт". Ну и наконец сама база MySQL, куда вставляются мои данные. Я её создал следующим запросом:

CREATE DATABASE `library` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

у текстовых полей таблиц кодировка та же. Вместо русских букв вставляется какая-то хрень вроде ыфвфыа.
Итак:
1) Как мне правильно переводить страницы в utf-8? Думаю, я что-то не так сделал.
2) Почему проверки на русские буквы не работают?
3) Что мне делать со вставкой в базу?
Заранее спасибо.

   
 
 автор: mihdan   (15.12.2007 в 12:38)   письмо автору
 
   для: barcelona   (15.12.2007 в 11:57)
 

>хрень вроде ыфвфыа.
это и есть UTF-8

>Почему проверки на русские буквы не работают?
потому что вы проверяете в кодировке windows-1251(koi8-r), а нужно то в UTF-8 проверки теперь делать

>создаю новую страницу в Notepad, далее "Кодировки"-->"Кодировать в UTF-8" и вставляю содержимое
Я тоже самое проделываю в Editplus

   
 
 автор: barcelona   (15.12.2007 в 12:49)   письмо автору
 
   для: mihdan   (15.12.2007 в 12:38)
 

С проверкой полей в PHP родил правильное решение следующим способом:
$pattern='/[^а-яА-ЯёЁ\s]/u';
Работает. А вопрос такой: на моей домашней машине документы в кодировке utf-8 отображаются нормально, а на работе - сплошные закорючки. Нужно менять настройки сервера?

   
 
 автор: mihdan   (15.12.2007 в 21:05)   письмо автору
 
   для: barcelona   (15.12.2007 в 12:49)
 

header(кодировка);
<meta кодировка>

   
 
 автор: crasher   (16.12.2007 в 17:34)   письмо автору
 
   для: barcelona   (15.12.2007 в 12:49)
 

См. моё сообщение в
http://www.softtime.ru/forum/read.php?id_forum=3&id_theme=47128&page=1

   
 
 автор: Faraon   (16.12.2007 в 18:50)   письмо автору
 
   для: barcelona   (15.12.2007 в 12:49)
 

>а на работе - сплошные закорючки. Нужно менять настройки сервера?
Сервер это хостинг, или ваш физический?

   
 
 автор: Trianon   (17.12.2007 в 01:25)   письмо автору
 
   для: barcelona   (15.12.2007 в 11:57)
 

addDefaultCharset в .htaccess какую кодировку указывает?

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования