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

Форум MySQL

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

 

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

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Кодировка MySQL!

Сообщения:  [1-7] 

 
 автор: kulakowka   (04.10.2006 в 02:07)   письмо автору
 
   для: cheops   (02.10.2006 в 02:50)
 

>Здесь тоже самое, найдите где выполняется функция mysql_connect() и сразу после неё выполняйте запрос
>
<?php
>  @mysql_query("SET CHARSET cp1251") or die (mysql_error());
>
?>


Проверил все файлы, но нигде нет функции mysql_connect(), что делать?

И еще что бы не создавать новую тему спрошу здесь.

В чем разница этих двух кодировок? Вот у меня некоторые проеты вместо русских букв оражали ????? понятно что из-за проблем между cp1251 и MySQL, так вот когда базу создаю в utf-8 то все отлично отображается! Так в чем все таки проблема этих кодировок7 Следует добиваться работы с кодировкой cp1251 или можно все оставить на utf-8??

Вот например проблема описанная мной в этой теме решилась именно так, т.е. созданием базы в кодировке utf-8!
Заранее спасибо!

   
 
 автор: cheops   (02.10.2006 в 02:56)   письмо автору
 
   для: kulakowka   (02.10.2006 в 02:53)
 

Так как это обычные файлы, можно использовать любую программу способную на это, например, Far.

   
 
 автор: kulakowka   (02.10.2006 в 02:53)   письмо автору
 
   для: cheops   (02.10.2006 в 02:50)
 

А не подскажите какой прогой лучше всего искать текст внутри файлов типа php?

   
 
 автор: cheops   (02.10.2006 в 02:50)   письмо автору
 
   для: kulakowka   (02.10.2006 в 00:09)
 

Здесь тоже самое, найдите где выполняется функция mysql_connect() и сразу после неё выполняйте запрос
<?php
  
@mysql_query("SET CHARSET cp1251") or die (mysql_error());
?>

   
 
 автор: kulakowka   (02.10.2006 в 00:09)   письмо автору
 
   для: cheops   (01.10.2006 в 23:45)
 

Как понять выражение:

"Для работы с ним после соединения и перед первым запросом в базу нужно давать следующие команды:
SET NAMES CP1251
"

Я так понимаю это нужно прописать в скрипте где то SET NAMES CP1251, но в каком файле это прописывать??

"В базу нужно давать следующие команды" как дать в базу эти команды? Куда это нужно писать?

Выполнил все указания которые вы советовали здесь: http://www.softtime.ru/forum/read.php?id_forum=3&id_theme=24602&page=2

А именно:

Нужно запустить командную строку (Пуск -> Программы -> Стандартные -> Командная строка) выполнить команду
chcp 1251 


перейти в каталог bin базы данных MySQL
cd D:\Server\mysql\bin  


Выполнить вход в mysql
mysql -u root -p  


Настроить кодировку соединения при помощи запроса
SET NAMES 'cp1251'  


Данные введённые после этого не будут искажены. При этом таблицы должны иметь кодировку по умолчанию cp1251.

Ниже даю ссылку на файл с результатом действий! Что там не так?

Вот все что я делал:
1. Создал базу в кодировке cp1251 (создавал в phpMyAdmin)
2. Установил нужную вещь ( вданном случае это портал IPB 2.1.7). Все автоматом установилось. Ввел логин и пароль. Автоматом зашло на форум и я там наблюдаю знаки ???? вместо русских букв.
3. Захожу в phpMyAdmin смотрю пункт "Сравнение" в описании таблиц. Там везде напротив каждой таблицы стоит cp1251_general_ci . Вроде все норм или не так?
4. Потом были прочитаны форумы, испробованы все советы (которых оказалось больше 10(!)) и все это прошло безрезультатно.

При установке PHP-Nuke и Slaed возникали теже проблемы с отображением русских букв. Но по совету на одном из форумов в код файла прописывалась одна строчка:

mysql_query("SET CHARSET cp1251") or die (mysql_error());

и все отлично испровлялось!

Как поступить в этой ситуации? Что нужно сделать?
Заранее спасибо!

   
 
 автор: cheops   (01.10.2006 в 23:45)   письмо автору
 
   для: kulakowka   (01.10.2006 в 19:26)
 

В phpMyAdmin - это кодировка представления. Какую кодировку у вас имеет таблица? Выполняете ли вы настройку кодировки соединения, перед тем как работать с русским текстом из PHP-кода? Последнее осущетсвляется при помощи запроса
SET NAMES 'cp1251'

Это если кодировка cp1251.

   
 
 автор: kulakowka   (01.10.2006 в 19:26)   письмо автору
 
 

значит в phpmyAdmin пишет так: MySQL-кодировка: UTF-8 Unicode (utf8)
Что это значит? Возможно из-за это возникновение проблемы6 что при установке любой портальной системы или форума у меня вместо русских букв знаки вопроса "?????"? И приходится все время исправлять скрипт. а можно как-нибуди изменить эту кодировку на 1251? При установке MySQL я ставил кодировку 1251 на что это повлияло? и Почему здесь пишет что кодировка UTF-8 Unicode (utf8) ?
Как исправить это все?
Заранее спасибо!

   

Сообщения:  [1-7] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

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