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

Форум MySQL

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

 

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

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

тема: кодировка
 
 автор: drakonchik   (31.03.2008 в 10:59)   письмо автору
 
 

в Mysql стоит кодировка cp1251, если я в консоле MySQL создаю таблицу и туда вставляю запись, с русскими буквами, то при вывое содержимого этой базы на том же самом консоле отображается все правильно. Но когда я эти данные отображаю на странице с помощью обращения к базе данных через php, у меня соответсовеннно вместо русских букв - знаки вопросов.
Подскажите, где тут может быть зарыт камень?

   
 
 автор: Max Vasin   (31.03.2008 в 11:11)   письмо автору
 
   для: drakonchik   (31.03.2008 в 10:59)
 

а если после коннекта с бд написать mysql_query("SET NAMES 'cp1251'");
то как?

----
Regards, Max Vasin.

   
 
 автор: drakonchik   (31.03.2008 в 11:16)   письмо автору
 
   для: Max Vasin   (31.03.2008 в 11:11)
 

изменилось: вместо знаков вопросов, другие закорючки.

   
 
 автор: cheops   (31.03.2008 в 11:13)   письмо автору
 
   для: drakonchik   (31.03.2008 в 10:59)
 

>Но когда я эти данные отображаю на странице с помощью обращения к базе данных через php
Сразу после установки соединения выполняете настройку кодировки
<?php
mysql_query
("SET NAMES cp1251");
?>

Консоль по умолчанию имеет кодировку cp866, вы её меняете при помощи команды
chcp 1251

   
 
 автор: drakonchik   (31.03.2008 в 11:19)   письмо автору
 
   для: cheops   (31.03.2008 в 11:13)
 

вставила эту строчку после конекта к базе, вместо знаков вопрос появились другие закорючки.

   
 
 автор: cheops   (31.03.2008 в 11:37)   письмо автору
 
   для: drakonchik   (31.03.2008 в 11:19)
 

Закорючки означают, что у вы набирали данные в кодировке cp866 вместо cp1251. В Windows консоль имеет кодировку DOS (866), перед тем как запускать клиент mysql и набирать данные, необходимо переключать кодировку на Windows при помощи команды
chcp 1251


Попробуйте вместо
mysql_query("SET NAMES 'cp1251'");
прописать
mysql_query("SET NAMES 'cp866'");
закорючки должны превратиться в русский текст (особенно если в браузере переключиться на кодировку 866).

   
 
 автор: drakonchik   (31.03.2008 в 11:34)   письмо автору
 
   для: cheops   (31.03.2008 в 11:13)
 

Народ, что делать то???

   
Rambler's Top100
вверх

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