Не работают символы ž ä ü и подобные
Не отображаются спецсимволы ž ä ü ç ý ö в комментариях, статусах, блогах
Не отображаются спецсимволы ž ä ü ç ý ö в комментариях, статусах, блогах.
Если написать в коммент символы ž ä ü ç ý ö, то они выйдут как _382; _228; _252; _231; _253; _246; (без знака "_", поставил его что бы было видно)
а В статусе если писать обычный текст и вставить в середине такой символ, то весь текст после символа как и он сам просто пропадут, и даже в базу не записываются)
Хотя у вас тут на сайте заметил что все Отлично. пожалуйста подскажите — Почему так? подскажите как исправить?
Заранее благодарен.
Кстати заметил что здесь в блоге на сайте тоже самое происходит тоесть видно только код. к сожалению не могу показать. Запись удалили.
Дело в том что в саму базу спец символы записываются не как они есть а их кодом. Во всяком случае должны. А тут почему то там добавляется пара лишних символов (не помню какие, тут у меня Денвера нет), затем эти символы при отображении страницы вычитаются и выходит чисто их код, хотя нужно что бы были буквы.
Я из за этого не могу окткрыть свой самый большой проект😥Это будет первая Туркменская Социальная сеть. А куда ей без Туркменского языка
Что с этим делать? Рекодит только там, где есть визуальный редактор…
А каким образом экранируются буквы "в" и "п"?Проходил мимо, Спецсимволы экранируются перед по падением в базу, это защищает её от зловредного кода.
Я вот только не понимаю 1 — Ну и что что "экранируют" перед базой. Почему потом нормально на сайте не отображаются или даже пропадает весь текст? 2 — Тогда почему на здесь на сайте нормально отображаются на форуме?
Они не экронируются, проверьте для начала кодировку базы.А каким образом экранируются буквы "в" и "п" ?
в добавок к этому весь icov('utf-8','cp1251',..) поменятьда и не забудьте в метатегах в индекс изменить кодировку сайта в юфт, или можно в файле htaccess задать основную кодировку, на вопросы как поменять кодировку в метатегах и в хтассесс ответит яндекс.
Движок недоработаный, символы сохраняет в кодировке кириллицы. Делаем следущее, переводим всю базу в кодировку uft8 unicode, далее качаем все файлы сайта на компьютер, качаем программу массового перевода файлов в формат uft8, для этого пригодятся 2 программы, одна для массового перевода файлов в формат uft8, вторая для массового удаления boom с файлов. Название программ не помню, ищите в яндексе, после качаем все файлы на сервер с заменой. Вот вам и двиг полностью в кодинге uft8, после этого будут работать все символы!
Уважаемый не говорите чуши, вы так сами хоть делали? для чего раздавать советы другим, если вы даже не имеете представление о том что нужно делать чтобы система работала на УТФ8. Простое тупое конвертирование ни к чему хорошему не приведет, только завалит сайт и он будет не рабочий.
Могу сказать что с конвертировать файлы это только 1% от работы необходимой проделать по переводу на утф. Просто пример нужно заменить в 2500 файлах все операторы которые работаю со строками например str_pos, substr и прочее. Ибо у строки в УТФ8 другой признак конца строки, если не сделать замены то вы первые увидите в модуле последних сообщений или комментариев в конце строки, которая обрезается, символы ромбиков!
Поэтому, если вы не знаете как и что делать на 100% правильно, воздержитесь от комментирования и абсурдных советов.
напомнило анекдот:только значение нужно увеличить примерно в 2 раза
— Товарищ прапорщик, сколько будет 60 разделить на 3?
— Приблизительно 20!
GoodBoy, вы пишете глупости, maxisoft прав. Одного конвертирования файлов недостаточно. Нужно везде менять вызовы всех функций, работающих со строками, на их мультибайтовые аналоги. Потому что для хранения строк в кодировке cp1251 используется 1 байт, в utf-8 — 2 байта. Стандартные строковые функции PHP не умеют работать со строками, в которых символ представлен более чем 1 байтом. Соответственно, если тупо все сконвертить в utf, движок начнет работать непредсказуемым образом.