Ми використовуємо cookie-файли
Для оптимізації роботи нашого сайту ми використовуємо cookie-файли. Продовжуючи використовувати сайт, Ви погоджуєтеся з використанням cookie-файлів.
Новий дизайн
Панель керування
  • Русский
  • Українська
  • English
  • UAH
  • USD
  • RUB
  • EUR
  • 0-800-307-307 Гаряча лінія
  • +38 (044) 392-74-33 Київ
  • +38 (057) 728-39-00 Харків
  • +38 (056) 794-38-31 Дніпро
  • +38 (032) 229-58-93 Львів
  • +38 (048) 738-57-70 Одеса
  • +38(093) 170-15-42  Life
  • +38 (067) 400-88-44 Київстар
  • +1(888)393-24-51  USA, Toll free
  • +44(131)507-01-14  Great Britain
  • +7 (499) 348-28-61 Москва

2.7.3.1. Невірна кодування при виведенні даних з бази

У разі, якщо кодування сайту і бази даних не збігається (частина тексту на сайті виводиться нормально, а частина тексту з бази - у вигляді незрозумілих знаків), необхідно в скрипті, який підключається до бази даних, додати команди, які вкажуть MySQL-сервера кодування , в якій потрібно виводити текст. Залежно від того, яку бібліотеку PHP ви використовуєте, команди будуть виглядати так:

  • Для бібліотеки mysql:
    mysql_query("SET NAMES 'utf8' COLLATE 'utf8_general_ci'");
    mysql_query("SET CHARACTER SET 'utf8'");
  • Для бібліотеки mysqli:
    mysqli_query($link, "SET NAMES 'utf8' COLLATE 'utf8_general_ci'");
    mysqli_query($link, "SET CHARACTER SET 'utf8'");

У командах:

  • Замість utf8 необхідно вказати потрібне кодування (наприклад, cp1251).
  • Замість utf8_general_ci - потрібне зіставлення кодувань (наприклад, cp1251_general_ci). Повний список кодувань і зіставлень MySQL доступний в офіційної документації.
  • Для бібліотеки mysqli перший параметр покажчик на підключення до БД - в вашому скрипті він може бути відмінним від $link (Дізнатися його можна, подивившись в вихідному коді назву змінної, якій присвоюється результат виконання функції mysqli_connect()).