Тема: Помогите с кодировкой ... Почему У Меня Выводятся Вопросики?

на сайте вопросики вместо того что в азе данных. в базе данных нормальные рсские буквы. не знаю где проблемы. я е знаю чо и где нужно изменить. поогите
может тут адо чт ото поменять?


SHOW GLOBAL VARIABLES LIKE 'char%'

Variable_name  Value 
character_set_client latin1
character_set_connection latin1
character_set_database latin1
character_set_filesystem binary
character_set_results latin1
character_set_server latin1
character_set_system utf8
character_sets_dir /usr/share/mysql/charsets/

2

Re: Помогите с кодировкой ... Почему У Меня Выводятся Вопросики?

Вадим2008
1) Какой скрипт используете? Посмотрите в документации, возможно у него предусмотрена установка кодировки соединения с MySQL.
2) Какая кодировка сайта, собственно?
3) Есть доступ к конфигурационному файлу MySQL (my.cnf)?
4) Предупреждаю, что при нормально выставленной кодировке соединения с MySQL, старые данные работать перестанут и их потребуется перекодировать. Если в части перекодирования потребуется помощь, то будем разбираться отдельно.

Re: Помогите с кодировкой ... Почему У Меня Выводятся Вопросики?

ступ к конфигурационному файлу MySQL отсутствут.
Я могу только сphpMyAdmin работать

4

Re: Помогите с кодировкой ... Почему У Меня Выводятся Вопросики?

Вадим2008
А ответы на остальные вопросы мне из вас вытягивать надо?

Re: Помогите с кодировкой ... Почему У Меня Выводятся Вопросики?

Сайт 4 года работал без проблем, кодировка сайта- phpnuke. А тут раз и вопросики, причем именно вместо тех русских букв что в базе данных.
Сисадмин сказал, что ничего они не делали  и разбирайся сам. Вот в первый раз и начал разбираться с MySQL. Для работы с базой данных установил  phpMyAdmin-3.0.0-all-languages. Доступа к конфигурационным файлам MySQL у меня нет.
В тех  таблицах где нужно русская кодировка -по русски написано, как и должно быть , но только на сайте вопросики. По этому я вообще не понимаю, что можно исправить. И не знаю что требовать от админа сервера. Вот так.

Re: Помогите с кодировкой ... Почему У Меня Выводятся Вопросики?

и вот еще один вопрос.
что означает ошибка и как ее исправить7
SQL Error : 1267 Illegal mix of collations (cp1251_general_ci,IMPLICIT) and (latin1_swedish_ci,COERCIBLE) for operation '='

SELECT user_id, username, user_password, user_active, user_level FROM qw_users WHERE username = 'ВИТЯ'

7

Re: Помогите с кодировкой ... Почему У Меня Выводятся Вопросики?

Вадим2008 сказал:

и вот еще один вопрос.
что означает ошибка и как ее исправить7
SQL Error : 1267 Illegal mix of collations (cp1251_general_ci,IMPLICIT) and (latin1_swedish_ci,COERCIBLE) for operation '='

SELECT user_id, username, user_password, user_active, user_level FROM qw_users WHERE username = 'ВИТЯ'

молодой человек вам  выдается ощибка о том что у вас разные типы кодировок поля username и запроса... Витя эт cp1251, а username ент latin1...поменяйте кодировки полей это даст вам возможность работы с русскими символами, или пишите на транслите если вы не хотите менять кодировки полей...)))

Сообщение добавлено Fri Oct 10 09:27:48 2008

Вадим2008 сказал:

Сайт 4 года работал без проблем, кодировка сайта- phpnuke. А тут раз и вопросики, причем именно вместо тех русских букв что в базе данных.
Сисадмин сказал, что ничего они не делали  и разбирайся сам. Вот в первый раз и начал разбираться с MySQL. Для работы с базой данных установил  phpMyAdmin-3.0.0-all-languages. Доступа к конфигурационным файлам MySQL у меня нет.
В тех  таблицах где нужно русская кодировка -по русски написано, как и должно быть , но только на сайте вопросики. По этому я вообще не понимаю, что можно исправить. И не знаю что требовать от админа сервера. Вот так.

а чтобы убрать знаки вопросов вам небходимо сменить кодировку, в мysql... вам просто нужно поставить на каждой странице, где есть код работы с базой или подключение к ней строку mysql_query( 'SET NAMES cp1251' ); эт команда должна помочь, в перекодировкой русских символов на странице вывода)))надеюсь она вам поможет)))) ДА прибудет с вами сила кодера ))))))

Re: Помогите с кодировкой ... Почему У Меня Выводятся Вопросики?

lostoffuture сказал:

молодой человек вам  выдается ощибка о том что у вас разные типы кодировок поля username и запроса... Витя эт cp1251, а username ент latin1...поменяйте кодировки полей это даст вам возможность работы с русскими символами, или пишите на транслите если вы не хотите менять кодировки полей...)))
ДА прибудет с вами сила кодера ))))))

Я понимаю, что кодировки не совподают...ПОДСКАЖИТЕ ,КАК ИСПРАВИТЬ?

9

Re: Помогите с кодировкой ... Почему У Меня Выводятся Вопросики?

mysql_query( 'SET NAMES cp1251' );

напишите эту строку после подключения к базе))))))

10

Re: Помогите с кодировкой ... Почему У Меня Выводятся Вопросики?

Вадим2008

Hanut сказал:

1) Какой скрипт используете? Посмотрите в документации, возможно у него предусмотрена установка кодировки соединения с MySQL.
2) Какая кодировка сайта, собственно?

Вы посмотрели конфигурационные директивы phpNuke на наличие той, которая позволяет сменить кодировку соединения с MySQL?
У вас сайт в windows-1251?

11

Re: Помогите с кодировкой ... Почему У Меня Выводятся Вопросики?

Ребятушки... У меня такая же беда... Вся инфа выводится нормально, а то ,что берется из базы выводится ???????????? такая хрень .. На этом серве стоит Win XP SP2, IIS 5,php,phpmyadmin,mysql ...Все последних версий с этого и др. сайтов.
Из предыдушего обсуждения я не вынес ничего полезного для себя... кроме того гемора чтобы прописывать постоянно mysql_query( 'SET NAMES cp1251' ); .. Подскажите плиз в настройках чего покопаться , чтобы это исправить...и если можно конкретнее с указаниями к действию smile) Если поможет ,то рядом стоит такой же комп,  но только не на IIS, а на Apache (который установлен  комплекте Денвер, без заморочек кооче smile) )...так вот на нем все нормально выводится...  Но я не думаю что это из-за web сервера..

12

Re: Помогите с кодировкой ... Почему У Меня Выводятся Вопросики?

quake3
Если не хотите прописывать запрос устанавливающий кодировку соединения после функции подключения, то добавьте в my.ini, в раздел [mysqld], данную строку:
init-connect="SET NAMES cp1251"

13

Re: Помогите с кодировкой ... Почему У Меня Выводятся Вопросики?

А что можно сделать в таком случае:

MYSQL- таблицы созданы в UTF-8
в my.ini в разделе [mysqld] стоит строка init_connect = 'SET NAMES utf8'

SQL-запрос из phpmyadmin (SHOW GLOBAL VARIABLES LIKE 'char%') дает следующее:

Variable_name     Value
character_set_client    utf8
character_set_connection    utf8
character_set_database    utf8
character_set_filesystem    binary
character_set_results    utf8
character_set_server    utf8
character_set_system    utf8

в PHP-скрипте передается META-тэг <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

но при запросе:

$db=mysql_query("SELECT * FROM test",$cndb);
$row=mysql_fetch_array($db);
echo $row["name"];

в браузер передается вместо русских букв:  ?????????????

Мучаюсь уже который день.

14

Re: Помогите с кодировкой ... Почему У Меня Выводятся Вопросики?

B|@tt0pter
Как выглядят сами данные в phpMyAdmin? Если в phpMyAdmin кириллица, то обратите внимание на пользователя, которым идет подключение скрипта: это ни в коем случае не должен быть root. Если это root, то создайте отдельного пользователя и наделите его только необходимыми правами: не ставьте галочки в разделе "Администрирование".

Пользователь root существует исключительно для администрирования сервера, на него не действуют некоторые настройки, включая установку кодировки соединения через init_connect.