[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: UTF-8 есть проблема
mavrrr
Сделал парсер, который скачал информацию с русскоязычного сайта и сохранил в mysql в кодировке utf-8. (нужно именно в utf-8) Затем я вывожу текст из mysql на страницу с <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
Русский текст хорошо виден, только вместо некоторых символов ромбик со знаком вопроса. Например символ: "—" выводиться криво. Кто-нибудь сталкивался с таким? как это исправить?

Если же я вывожу текст без <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">, то видны эти символы а текст соответственно нет.



Спустя 35 минут, 54 секунды (15.05.2011 - 19:22) Winston написал(а):
Попробуй первой строчкой в фале написать
<?php
header('Content-Type: text/html; charset=utf-8');
?>

Спустя 31 минута, 4 секунды (15.05.2011 - 19:53) mavrrr написал(а):
нет, это не помогает

Спустя 1 час, 2 секунды (15.05.2011 - 20:53) VELIK505 написал(а):
Цитата (mavrrr @ 15.05.2011 - 15:46)
Сделал парсер, который скачал информацию с русскоязычного сайта и сохранил в mysql в кодировке utf-8. (нужно именно в utf-8) Затем я вывожу текст из mysql на страницу с <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
Русский текст хорошо виден, только вместо некоторых символов ромбик со знаком вопроса. Например символ: "—"  выводиться криво. Кто-нибудь сталкивался с таким? как это исправить?

Если же я вывожу текст без <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">, то видны эти символы а текст соответственно нет.

Похоже что сам файлик отвечающий за твою страницу надо перекодировать и сохранить в UTF-8 без BOM
сделать это можно через notepad++

Спустя 33 минуты, 27 секунд (15.05.2011 - 21:26) mavrrr написал(а):
Цитата (VELIK505 @ 15.05.2011 - 17:53)
Цитата (mavrrr @ 15.05.2011 - 15:46)
Сделал парсер, который скачал информацию с русскоязычного сайта и сохранил в mysql в кодировке utf-8. (нужно именно в utf-8) Затем я вывожу текст из mysql на страницу с <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
Русский текст хорошо виден, только вместо некоторых символов ромбик со знаком вопроса. Например символ: "—"  выводиться криво. Кто-нибудь сталкивался с таким? как это исправить?

Если же я вывожу текст без <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">, то видны эти символы а текст соответственно нет.

Похоже что сам файлик отвечающий за твою страницу надо перекодировать и сохранить в UTF-8 без BOM
сделать это можно через notepad++

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

Спустя 15 часов, 21 минута, 42 секунды (16.05.2011 - 12:48) VELIK505 написал(а):
Но как ты говоришь ромбики это BOM.
Может в этот файлик инклюдяться какие то файлики из которых BOM не вырезан

Спустя 9 минут, 20 секунд (16.05.2011 - 12:57) linker написал(а):
Если ты писал парсер, то скорее всего использовал стандартные строковые функции, которые не умеют работать с UTF-8.

Спустя 6 дней, 8 минут, 1 секунда (22.05.2011 - 13:05) XCross написал(а):
Извините за вторжение :)

header('Content-Type: text/html; charset=utf-8');


На локальном сервере без результатов. Как было некорректное отображение символов так и осталось. Выручает только windows-1251.
Где и что нужно подправить?

Прописывал в .htaccess:

AddDefaultCharset UTF-8 


Проблемма не решается.

Спустя 10 часов, 21 минута, 59 секунд (22.05.2011 - 23:27) Winston написал(а):
Информация на сайте с которого парсил в какой кодировке? Если отличная от utf8 то используй iconv для преобразования перед вставкой в базу, и используй
mysql_query("SET NAMES 'utf8'"); в конфиге бд
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.