Здравейте всички! Имам Slackware сървер с MySql 5. Определен уеб сайт се поддържа отдалечено от Windows машина по следния начин: - през ssh (със WinSCP) се качват *.php, *.css и т.н. файлове; - пак през ssh (putty) се достига конзолата на mysql и директно се пишат INSERT заявки в базата.
За момента методологията не може да се промени. Идеята е да се ползва utf8 за целия сайт. Лично аз заварих база данни с енкодинг latin1, в която е тъпкано с cp1251. Също така php скриптовете и текста на кирилица в тях също са на cp1251, защото не е задавано друго при създаването им под Windows. И като последно - скриптовете генерират html код, който съдържа charset=windows-1251. -------------------- С много зор дъмпнах базата, конвертирах я с iconv в utf8 и я върнах отново както трябва. Сега всичко в mysql-а е utf8 (база, таблици, полета и самите данни). В последствие конвертирах и php скриптовете с кирилица в utf8. Промених функцията, която бърка в базата да изпълнява допълнително "set names utf8" и накрая html файловете да идват с charset=utf-8. Сега сайтът работи!!! Но не и методологията за обновяване. За php файловете създадени под Windows вече ще се задава при запис да ползват utf8. Това е ОК. Но заявките към mysql-а са мъка. Първо се логвам с putty към сървера като задавам на putty да ползва utf8 за визуализиране на данните. След това в конзолата изпълнявам export LANG=bg_BG.UTF-8 (Нужно ли е?!?). До тук когато пиша на кирилица в конзолата (разбирайте от Windows-a през putty) всичко изглежда нормално. Пример: [EMAIL PROTECTED]:~$ проба -bash: проба: command not found [EMAIL PROTECTED]:~$ След като се логна в mysql изпълнявам "set names utf8" и при произволен селект виждам всичко както трябва: mysql> select * from menu; +----+------------------------+-------------+-----+ | id | namebg | nameen | img | +----+------------------------+-------------+-----+ | 2 | Структура | Structure | | | 5 | Конференции | Conferences | | | 6 | Проекти | Projects | | +----+------------------------+-------------+-----+ 3 rows in set (0.00 sec) Но когато започна да пиша INSERT с кирилица получавам сърцебиене: mysql> insert into table1 (namebg) value ("н▒и▒в▒▒ Дано добре видите какво се случва. Буквите от "р" до "я" и от "А" до "П" не се визуализират. Не съм проблвал дали данните ще се въведат ако изпълня на сляпо заявката. Факт е, че работата е абсурдна. Всяко мнение за грешки в изпълнението като цяло и за проблемът на края е добре дошло! След нощ + ден безсъние и гуугъл не помага... Благодаря!
_______________________________________________ Lug-bg mailing list Lug-bg@linux-bulgaria.org http://linux-bulgaria.org/mailman/listinfo/lug-bg