|
|
|
| В базе могут быть записи в 2-х кодировках.
UTF-8"
Windows-1251
Как определить, в какой кодировке текст?
Чтобы если запись в кодировке UTF-8 - применять функцию:
$movies_name=iconv("UTF-8", "Windows-1251", "$movies_name");
А если в Windows-1251 - то нет. | |
|
|
|
|
|
|
|
для: jaroslav
(07.11.2009 в 14:06)
| | Сервер все равно вернет результат в одной кодировке - кодировке соединения.
Вернее даже - в кодировке резульата запроса. character_set_results
Если же У Вас в таблице лежит поток сырого кода (BLOB) , в котором могут быть разные charset's, то нужно глядеть в соседнее поле - с кодовой страницей. Предварительно его создав и заполнив. | |
|
|
|
|
|
|
|
для: Trianon
(07.11.2009 в 14:12)
| | Так можно определить, в какой кодировке находится текст? | |
|
|
|
|
|
|
|
для: Jaroslav
(07.11.2009 в 14:24)
| | находится где? | |
|
|
|
|
|
|
|
для: Trianon
(07.11.2009 в 14:42)
| | Изначально в базе данных, но потом передается в переменную.
Т.е. находится в переменной. Тут такая небольшая проблема.
Устанавливаю на сайт движок ру-туба (предоставляют они такую возможность, чтобы скачать сам их движок и установить на сайт...) Проблема в том, что у меня сайт и база данных - в формате windows, а у них - все в формате UTF-8.. Т.е. на сайте - все работает, но при импорте роликов с их сайта - они идут в мою базу в виде:
Стриптиз РѕС
и на сайте выводятся также.. соответственно (их, импортируемые ролики).
mysql_query("SET NAMES 'cp1251'"); - это указано. Не помогает... | |
|
|
|
|
|
|
|
для: Jaroslav
(07.11.2009 в 14:59)
| | поле таблицы какой тип и какую кодировку имеет?
Может быть оно для движка должно быть utf-8 ? | |
|
|
|
|
|
|
|
для: Trianon
(07.11.2009 в 15:01)
| | таблица: - utf8_bin
поле: varchar(255) utf8_bin
конечно, должно быть... :)
но мне надо данные вывести не в utf,,,
У них там можно указывать кодировку, в какой идут данные в таблицу на сайте.
вот идут (когда с моего сайта) - в формате cp1251 (в то время, как сама таблица в формате utf8_bin)
Поменять формат самой таблицы - не могу, так как ру-тубе к ней обращается, обновляет данный, да и при импорте будут ошибки.... | |
|
|
|
|
|
|
|
для: Jaroslav
(07.11.2009 в 15:03)
| | Если база, таблица и поле в utf8 , и скрипт, наполняющий таблицу подключается корректно (хоть в utf8, хоть в любой другой кодировке), то в самой таблице будут корректные данные. Это раз.
Второе. Если в таблице всё ок, и скрипт, забирающий данные из таблицы, подключится корректно (указав кодировку в которой он хочет данные получить) - он их в этой кодировке получит. Даже если это кодировка отличается от той, в которой данные в таблице хранятся.
Возможно, стоит применить SET CHARACTER SET 'cp1251' вместо SET NAMES 'cp1251' , но по-моему, особой разницы быть не должно. По идее на корректность выдаваемых результатов этот ньюанс не влияет. | |
|
|
|
|
|
|
|
для: Trianon
(07.11.2009 в 15:14)
| | Спасибо. | |
|
|
|