Кирилица и енкодинг

Вероятно всеки уеб мастър в България, занимаващ се с изработка и поддръжка на уеб сайтове, който да не се е сблъсквал с проблеми свързани с енкодинга и кирилицата. Терминът "енкодинг", идващ от английското наименование encoding, представляват начина, по който се съхраняват символите във вид на някакъв цифров код. Пример, за често използван енкодинг са CP1251 и UTF-8. Най-честите изпитвани проблеми, се състоят от разлики между енкодингът на базата данни и файловете на нашият уеб сайт.

Препоръчваният енкдинг, който трябва да използвате при уеб сайтовете си както и при базите си данни е UTF-8. Това е нов стандарт, за разлика от CP1251, който вече не е актуален. Ако все пак Ви се случи, да преместите или изградите уеб сайт, на своя хостинг акаунт и виждате съдържанието си като ????? ?????????, то това е индикатор за разлика между енкодинга на файловете Ви и базата данни. Решението за поправяне на този проблем е конвертирането на базата Ви данни в съшия формат, както са и файловете Ви. В този случай, можете да постъпите по следните начини:

 

Използвайки програмата iconv. Тази програма е стандартна инсталация към всички Linux системи и може да се използва и чрез PHP. Един реален пример за конвертиране от CP1251 към UTF-8 чрез iconv е следния:

iconv -f WINDOWS-1251 -t UTF-8 database.sql > database-converted.sql.

 

Другото решение, е просто да свалите базата си данни на локалния компютър, и да я отворите в текстов редактор, който поддържа конвертиране в различен енкодинг (такъв например е Notepad++). След като отворите базата си данни с текстовия редактор, конвертирайте я в нужния формат, запазете промените и я импортирайте наново в хостинг акаунта си.

 

За да разберете в какъв енкодинг да конвертирате базата си данни, трябва да разберете и какъв енкодинг използва Вашата страница. Това може да се постигне по два начина. Единият начин, е просто да проверите изходния код на страницата Ви, като натиснете клавишната комбинация CTRL + U или от менюто View -> Page Source. Ето и един примерен изходен код и начина, по който е описан енкодинга:

 

Енкодинг

 

Възможно е да изпитвате затруднения с енкодинга на Вашият уеб сайт, ако при връзката, която се прави с базата данни е зададена с неправилен енкодинг. Това може да се поправи, като въведете следният код веднага след като се осъществи връзката с базата данни:

 

mysql_query("SET NAMES 'енкодинг' ");

 

Ако въпреки всички изпитвате проблеми с правилното изобразяване на съдържанието поради неправилно зададен енкодинг, можете да се свържете с нашата професионална техническа поддръжка. Помагали сме да доста наши клиенти за решаването именно на такива проблеми и със сигурност няма да откажем помощ и на Вас.

Статия от Валентин Джоров

Авторът все още няма описание.

Социални мрежи:
Още статии от автора

Абонирайте се за нашия бюлетин

С абонамента си получаваш повече актуални новини и нашите специални промо оферти

Абонирайте се за нашия бюлетин