Кириллица или Юникод? Меняем кодировку | SelkinVitaly.RU
Кириллица или Юникод? Меняем кодировку | SelkinVitaly.RU

Проблема с кодировкой и её сменой.

Рубрика: XHTML и HTML

Просмотров: 985

Всем привет. На протяжении многих месяцев я не мог побороть одну проблему, которая не давала мне покоя. Кодировка - как много в этом слове...

Смена кодировки на сайте

Кодировка - это определённая таблица, состоящая из некоторого кол-ва символов. Чтобы страница отразилась в доступном для нас виде, необходиму указать верную таблицу кодировки.

Выбор кодировки

Думаю, ни для кого не секрет, что сейчас на просторах Интернета наиболее используемы и восстребованы две таблицы: кириллица (Windows-1251) и 8-битная форма юникода (UTF-8). Первоначально, когда я делал первые шаги, я использовал кириллицу, т.к она была наиболее популярна. Сейчас она утрачивает свою значимость, на смену приходит более мощная - 8-битное кодирование текста Юникодом, называемое UTF-8.

Сначала я не придавал этому значение, однако после начал замечать, что моя кириллическая вёрстка сдаёт позиции, и возникают проблемы с англоязычными сервисами. Исходя из всего этого, мой вам совет - используйте UTF-8, кириллица - это прошлый день.

Смена кодировки на сайте (CP1251-UTF-8)

Обычно, смена происходит в три этапа: меняем кодировку самих страниц, указываем используемую кодирвку, меняем кодировку в БД. Теперь о каждом пункте по подробнее.

1. Смена кодировки веб-страниц

На этом этапе нам понадобится любой текстовый редактор, который способен изменить кодировку файла. Я использую для таких целях Notepade2.

Итак, открываем нашу страницу в программе:

Определение кодировки файла

Жмём Файл--Кодировка и меняем с ANSI на UTF-8.

Смена кодировки файла

2. Указываем кодировку браузеру

Браузер - это такая же груда программного кода, которая не в состоянии самостоятельно определить кодировку. Поэтому тут нужно делать вручную. Можно пойти несколькими путями:

1) Прописать meta-тег для указания кодировки

Для каждой страницы добавляем:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>

2) Прописать PHP-директиву для указания кодировки

Для каждой страницы добавляем:

<?php header('Content-type: text/html; charset=utf-8')?>

3) Прописать директиву в .htaccess для указания кодировки

Это самый лучший и простой способ, т.к нужно добавить лишь одну строчку в файл .htaccess:

AddDefaultCharset UTF-8

3. Изменяем кодировку в БД

Это, пожалуй, самый проблематичный шаг. Дело доходило до того, что я писал в службу поддержки хостинга. Но и её представители не дали мне вразумительно ответа. Ответ был найден на стороннем блоге. Оказалосьб, что я не добавил парочку директив в файл с соединением БД.

Итак, смотрим:

1) Экспортируем наши таблицы (БЕЗ СЖАТИЯ).

Экспортируем таблицы для изменения кодировки

2) Помещаем полученный код при экспорте в пустой файл с расширение sql

3) Меняем кодировку данного файла через Notepad2 на UTF-8 без BOM.

Смена кодировки sql-дампа

4) Открываем файл и изменяем кодировку таблиц.

Находим все возможные подобные строки в нашем файле:

ENGINE=MyISAM AUTO_INCREMENT=5 DEFAULT CHARSET=cp1251 AUTO_INCREMENT=5 ;

Меняем cp1251 на utf8.

5) Прописываем PHP-директиву в файл с соединением БД.

mysql_query("SET NAMES 'utf8'");
mysql_query("SET CHARACTER SET 'utf8'");
Добавляем операторы для изменения кодировки

И только после этих операций кодировка будет сменена. Надеюсь, что вы не наступите на грабли, на которые наступил в своё время я.

Комментарии:

Добавил: WebCumo (06-Sep 2010 11:30:28)

Автор, всё могу понять, но вот не доходит: а на кой чёрт в БД-то кодировку менять? SET NAMES codepage уже отменили? Пусть БД остаётся в том виде, в каком есть! не сложно же добавить после mysql_connect mysql_query('SET NAMES UTF-8');

Добавил: Lilu (02-Jun 2010 8:53:02)

Решила свою проблему! Открыла в браузере html-документ. поменяла кодировку и сохранила страницу заново! Текст спасен! Все теперь не буду менять кодировку.

Добавил: Lilu (02-Jun 2010 7:41:19)

Добрый день! к сожалению, поздно набрела на эту статью. я редактировала сайт созданный на основе английского шаблона: у меня стояла кодировка utf-8" и надо ж было мне ее поменять на windows-1251!!! Теперь у меня в html-файле кириллица заменилась на юникод. работаю в программе dreamweavere - прописываю в <head> : <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> и ничего не меняется. Неужели теперь не вернуть исходный текст?

Добавил: rfv (02-Jun 2010 1:06:45)

В течение более 90 лет Donaldson Company, Inc. является ведущим мировым лидером в производстве воздушных фильтров и систем фильтрации и запасных частей. На сегодняшний день компания удерживает ведущие позиции в разработке инновационных промышленных технологий и производстве передовых решений фильтрации. Крупнейшие мировые производители полагаются на Donaldson в решении проблем фильтрации. Передовая технология, высочайший уровень качества. Полный диапазон запасных фильтров: более 6000 модификаций. Дональдсон - авторизованный дистрибьютор компании Donaldson в России. На сегодняшний день Концерн Donaldson является мировым лидером по производству фильтров двигателей внутреннего сгорания для машин, спецтехники, строительной техники, грузовиков и автобусов (автофильтры). Только фильтры Donaldson на постоянной основе поставляются в качестве серийных моделей на конвейеры и склады расходных материалов более 40 ведущих мировых и российских производителей двигателей, спецтехники и коммерческого транспорта. Среди них Liebherr, Caterpillar, Komatsu, Terex, Hitachi, Case New Holland, John Deere, КамАЗ, Volvo, M.A.N., Scania, Fiat, Deutz, Cummins, Perkins, Detroit Diesel, Demag, Mitsubishi, МТЗ, Renault, DAF, ERF, Freightliner и другие. Отлично характеризует качество фильтров Donaldson их принятие на снабжение армии, ВВС, корпуса морской пехоты и флота США. Крупнейшие мировые производители имеют убедительные причины полагаться на фильтры двигателей Donaldson в решении самых сложных проблем фильтрации. Дональдсон производит самую широкую номенклатуру фильтров для двигателей машин (спецтехники, грузовиков и т.д.) - более 40 000 позиций (воздушных циклонных фильтров предочистителей и воздушных фильтров, масляных фильтров и топливных фильтров, гидравлических фильтров и фильтров системы охлаждения), а также фильтров для очистки воздуха в загазованных помещениях промышленных цехов, фильтров для очистки воздуха в больницах, лабораториях, фильтров пылеуловителей на асфальтобетонных заводах, фильтров для больших компьютеров IBM и салонных фильтров самолетов. Применение передовых технологий обеспечивает непревзойденный уровень качества фильтров Donaldson для двигателей машин, спецтехники, строительной техники и коммерческого транспорта (автофильтров). Donaldson принадлежат многочисленные инновационные разработки и патенты на самые передовые фильтровальные материалы и конструкции различных фильтров. Так широко известными и распространенными являются разработанные Дональдсон технологии Ultra-Web, PowerCore, RadialSeal и многие другие. Благодаря этим и другим разработкам эффективность фильтров воздуха, масла, топлива и других веществ, необходимых для работы двигателя грузовиков, автобусов (автофильтров), спецтехники и строительной техники у фильтров Donaldson составляет до 99,99%. Многие разработки Дональдсон в области технологий фильтрации являются настолько популярными, что даже конкуренты часто выкупают право использования этих запатентованных технологий, т.к. без их применения современные фильтры являются неконкурентоспособными. Не смотря на лидирующие в отрасли позиции, Donaldson не злоупотребляет ценами. Анализ конкурентов по всему миру показывает, что при таких же или более высоких параметрах, фильтры Donaldson для машин часто стоят даже дешевле. А если принять во внимание более длительное время эксплуатации и максимальную защиту двигателей спецтехники, строительной техники и коммерческого транспорта (автофильтры), выбор в пользу фильтров Donaldson становится еще более оправданным с экономической точки зрения. Дональдсон (Санкт-Петербург) является официальным дистрибьютором концерна Donaldson Company, Inc. в России. Дональдсон поставляет по всей территории Российской Федерации фильтры, фильтрующие системы и элементы Donaldson для двигателей машин, спецтехники (экскаваторов, бульдозеров), грузовиков и автобусов (автофильтры), фильтры сельскохозяйственной техники (тракторов, комбайнов), а также промышленные системы фильтрации для различных производств. В товарный портфель входят: воздушные фильтры двигателя, топливные фильтры двигателя, масляные фильтры двигателя, фильтры систем охлаждения двигателя, картерные фильтры двигателя, гидравлические фильтры, выхлопные системы и комплектующие, сменные фильтрующие элементы, предварительные фильтры циклоны, промышленные фильтры, воздушные фильтры Donaldson. Официально представляя интересы Donaldson Company, Inc. в РФ, Дональдсон обеспечивает самое качественное обслуживание как дилеров, так и конечных потребителей, решая все проблемы приобретения фильтров, в т.ч. специфические для нашего рынка: 1. Качественный оперативный подбор фильтров Donaldson для любой спецтехники и коммерческого транспорта. Donaldson обладает самой большой базой, обеспечивающей подбор фильтров фактически для любой, существующей в мире модели двигателя техники, будь то грузовик, экскаватор, автокран, бульдозер и т.д. В том числе обеспечивается подбор фильтров по аналогам конкурентов. Сертифицированные сотрудники Дональдсон, прошедшие обучение на заводах производителя, консультируют клиентов, обеспечивая оперативный и главное - безошибочный подбор необходимых фильтров. 2. Доступность фильтров Donaldson в любой точке России. Дональдсон уделяет большое внимание развитию дилерской сети. Благодаря этому фильтры Donaldson максимально приближены к конечному потребителю, т.к. дилеры Дональдсон находятся во всех регионах РФ. 3. Защита от подделок. При формировании дилерской сети Дональдсон как официальный дистрибьютор Donaldson, обеспечивает надежность региональных поставщиков, проверяет и сертифицирует их, заключает договора на поставку фильтров, проводит обучение сотрудников и в результате выдает свидетельство дилера. Выданное нами свидетельство гарантирует качество поставляемых фильтров. 4. Оперативные поставки фильтров Donaldson по России. На складах Дональдсон и дилеров всегда в наличии полный диапазон фильтров, сменных картриджей и комплектующих Donaldson для двигателей, подходящих для любых видов машин, спецтехники, строительной техники, сельскохозяйственной техники и коммерческого транспорта (автофильтры) любых производителей: более 6000 модификаций. В случае уникальных заказов (модели фильтров не выпускаются серийно) сотрудники Дональдсон обеспечивают прямой заказ на заводах Donaldson. 5. Выгодные цены на фильтры Donaldson. Закупка фильтров напрямую у производителя и контроль дилерской наценки позволяют Дональдсон формировать самые выгодные цены на фильтры Donaldson в России. Передовые технологии фильтрации и защита от подделок. При формировании дилерской сети компания Дональдсон как официальный дистрибьютор Donaldson, обеспечивает надежность региональных поставщиков, проверяет и сертифицирует их, заключает договора на поставку фильтров, проводит обучение сотрудников и в результате выдает свидетельство дилера. Выданное нами свидетельство гарантирует качество поставляемых фильтров. Дональдсон постоянно расширяет и совершенствует дилерскую сеть, в связи с чем предлагает потенциальным региональным дилерам совместное продвижение продукции и активное сотрудничество.


Добавление комментария:

Имя *:

Email:

Текст *:

Символы на картинке *:

RSS-подписка
RSS-подписка на статьи по основам сайтостроения RSS-подписка на полезные уроки по web-языкам
Разделы статьй
Каталог товаров
Разделы уроков
Последние статьи
Последние уроки