Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.07.2010, 15:37   #1
Flippp
Пользователь
 
Регистрация: 05.03.2009
Сообщений: 62
По умолчанию mysql вывод русского текста

Здрасте! Понимаю тема избитая, но я что - то никак догнать не могу.
Вообщем суть в том,что мне надо вывести русские буквы из бд, но вместо
нужного мне текста какие - то крякозябры выводятся, вот пример:
"õïõïõ - тест", смотрю из phpmyadmin'a отображается текст правильно.Делаю такой запрос:
Код:
$query = mysql_query("SELECT * FROM news ORDER BY id DESC LIMIT 3") or die(mysql_error());
while($row = mysql_fetch_array($query))
{
	$date = $row['date'];
	$newstext = htmlentities($row['newstext']);
	echo $newstext;
}
?>
И выводятся нечитабельные символы(õïõïõ).Вообщем помогите! Излазил уже весь инет.

Последний раз редактировалось Flippp; 21.07.2010 в 15:45.
Flippp вне форума Ответить с цитированием
Старый 21.07.2010, 16:38   #2
motorway
Участник клуба
 
Регистрация: 28.06.2009
Сообщений: 1,950
По умолчанию

А если добавить еще и это перед и после запроса:
Код:
mysql_query('SET NAMES cp1251');
В крайнем случае можно конвертить результат функциями mb_convert_encoding и iconv
motorway вне форума Ответить с цитированием
Старый 21.07.2010, 16:49   #3
Flippp
Пользователь
 
Регистрация: 05.03.2009
Сообщений: 62
По умолчанию

Цитата:
Сообщение от motorway Посмотреть сообщение
А если добавить еще и это перед и после запроса:
Код:
mysql_query('SET NAMES cp1251');
В крайнем случае можно конвертить результат функциями mb_convert_encoding и iconv
Поставил:
mysql_query('SET NAMES cp1251');
$query = mysql_query("SELECT * FROM news ORDER BY id DESC LIMIT 3") or die(mysql_error());
mysql_query('SET NAMES cp1251');

Как были крякозябры так и остались,сама кодировка страницы windows-1251 ,в бд кодировка cp1251_general_ci.При выводе из бд появляются эти крякозябры. ((
Flippp вне форума Ответить с цитированием
Старый 21.07.2010, 18:01   #4
motorway
Участник клуба
 
Регистрация: 28.06.2009
Сообщений: 1,950
По умолчанию

Это у вас именно слово "тест" отображается так? Там точно 5 букв пишет?
Напишите какое-нибудь нормальное русское слово и как оно отображается

Последний раз редактировалось motorway; 21.07.2010 в 18:23.
motorway вне форума Ответить с цитированием
Старый 21.07.2010, 18:36   #5
Flippp
Пользователь
 
Регистрация: 05.03.2009
Сообщений: 62
По умолчанию

Цитата:
Сообщение от motorway Посмотреть сообщение
Это у вас именно слово "тест" отображается так? Там точно 5 букв пишет?
Напишите какое-нибудь нормальное русское слово и как оно отображается
Нет, какое слово не напиши будет отображаться не читабельно.
Flippp вне форума Ответить с цитированием
Старый 21.07.2010, 19:13   #6
motorway
Участник клуба
 
Регистрация: 28.06.2009
Сообщений: 1,950
По умолчанию

Я понимаю, но мне-то как раз важно посмотреть соответствие. Допустим, слово "трамвай" как будет отображаться? Можете проверить и написать сюда?
motorway вне форума Ответить с цитированием
Старый 22.07.2010, 09:50   #7
Flippp
Пользователь
 
Регистрация: 05.03.2009
Сообщений: 62
По умолчанию

Цитата:
Сообщение от motorway Посмотреть сообщение
Я понимаю, но мне-то как раз важно посмотреть соответствие. Допустим, слово "трамвай" как будет отображаться? Можете проверить и написать сюда?
трамвай выводится из mysql как òðàìâàé.
Flippp вне форума Ответить с цитированием
Старый 22.07.2010, 17:37   #8
motorway
Участник клуба
 
Регистрация: 28.06.2009
Сообщений: 1,950
По умолчанию

Видно, что это Windows-1252, и при конвертации в 1251 должно получиться нормально. Попробуйте сделать mysql_query('SET NAMES cp1252');
А также попробуйте $newstext=mb_convert_encoding($news text, 'windows-1251','windows-1252');

Последний раз редактировалось motorway; 22.07.2010 в 17:39.
motorway вне форума Ответить с цитированием
Старый 24.07.2010, 12:14   #9
slips
Форумчанин
 
Аватар для slips
 
Регистрация: 28.10.2008
Сообщений: 350
По умолчанию

уберите htmlentities зачем он вам ? Тем более вы выводите данные из БД
mysql_query('SET NAMES cp1252')- должна была помочь

Последний раз редактировалось slips; 24.07.2010 в 12:18.
slips вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
вывод русского текста из структуры Zimik C++ Builder 5 23.05.2010 17:24
В делфи 2010 в консольном приложении вместо русского текста абра-кадабра Rusl92 Помощь студентам 4 26.04.2010 18:42
Неполадки с кодировкой русского текста. 3dgraph HTML и CSS 3 14.07.2009 19:26
MySQl+PHP5 как сделать запрос на вывод текста в ближайшие 5 дней xxxsas SQL, базы данных 2 10.05.2009 14:04
Вывод русского текста на экран Ildarets Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 4 25.01.2009 18:08