Кодування windows 1251 була створена на початку 90 років для русифікації програмних продуктів, що випускаються корпорацією Microsoft:

Кодування є 8-бітної і включає в себе символи слов’янської групи мов, в яку входять російська, білоруська, українська, болгарська, македонська, сербська – це дає перевагу перед іншими кириличними кодуваннями (ISO 8859-5, KOI8-R, CP866). Однак у 1251-кодування є і вагомі недоліки:

  • 0xFF (25510) – це код, який зарезервований для символу «я». В програмах, що не підтримують чистий 8-ий біт, часто виникають непередбачувані проблеми;
  • Немає псевдографіки, яка присутня в KOI8, CP866.

Нижче наведені символи з Code Page 1251 або скорочено СР1251 (числа під символами є кодом в шістнадцятковій системі такого ж символу в кодуванні Юнікод):

Кодування windows 1251 в сайтобудуванні

Кодування windows 1251 в html

Нерідко у web-розробників і блогерів, володіють різною кваліфікацією виникає проблема з кодуванням сторінок: замість підготовленого тексту з’являються невідомі, неправильні символи. Щоб розібратися з цією проблемою, необхідно розуміти суть терміна «кодування сторінки».

Текст в пам’яті комп’ютера зберігається у вигляді певної кількості байт, а не в тому вигляді, в якому він відображається в текстовому редакторі. Кожен байт є кодом, який відповідає одному символу. Для того щоб текст на сторінці відображався як слід, потрібно повідомити браузеру, яку таблицю кодів для розшифровки і відображення він повинен використовувати.

Таблиця кодувань не є універсальною, тобто, для розшифрування тексту необхідно використовувати ту, яка відповідає кодуванні символів:

Кодування windows 1251 в сайтобудуванні

Для того щоб html-документ коректно відображався в браузері, необхідно вказати використовується кодування. Робиться це наступним чином:

— між тегом і закриває його потрібно прописати — виходячи з цього рядка, браузер буде використовувати символи російського алфавіту для відображення тексту на сторінці.

Кодування windows 1251 в PHP

Ні для кого не є таємницею, що генерація сторінок проходить шляхом вибірки та використання якоїсь частини інформації, яка зберігається в базі даних. При написанні сайту на PHP, найчастіше це mysql:

Кодування windows 1251 в сайтобудуванні

Нерідко при зміні хостингу виникає проблема: різні кодування інформації в базі даних і шаблони сторінок. З-за цього одна сторінка згенерована може одночасно містити кілька кодувань. Якщо інформація на сайті представлена в кодуванні віндовс 1251, то і читання з бази даних повинно здійснюватися за допомогою таблиці, в якій представлена win 1251 кодування.

Для узгодження розшифровки необхідно виконати функцію mysql_query(«SET NAMES cp1251») – це означає, що перетворення з машинного коду буде здійснюватися згідно таблиці cp1251.

Кодування windows 1251 в htaccess

При створенні сайту, попередньо налаштувавши кодування в шаблонах і базах даних, все одно може спливти проблема некоректного відображення інформації в браузері.

Для того щоб веб-ресурсу була задана кодування віндовс-1251, необхідно знайти (або створити) файл .htaccess. Це файл, який зберігає в собі додаткові налаштування і описи конфігурацій web-сервера.

У ньому для установки кодування слід прописати наступні рядки:

  • DefaultLanguage ru;
  • AddDefaultCharset windows-1251;
  • php_value default_charset «cp1251».

Таким чином, для коректного відображення тексту повинні збігатися його кодування і таблиця кодів, за допомогою якої браузер буде розшифровувати символи. Для текстів, написаних на слов’янських мовах, необхідна win 1251 кодування. Важливо пам’ятати, що елементи сторінок і баз даних повинні бути описані з допомогою однієї таблиці кодів.