Здраствуйте! Вот проблема у меня... Пишу сайт и столкнулся с проблемой при отсылке из формы например ивритских букв они приобразуются в свои хтмл эквиленты... Но проблема в том что они так и записываются в БД а при выводе из БД на экран я использую htmlspecialchars(); и соответствено нужные мне буквы на экран не выводятся =\ можете ли вы подсказать выход из данной ситуации? И извените за столь глупый вопрос :roll: Я подозревал локаль....Но не знаю что при этом делать.
Код (Text): <?php $string = '& #100;& #101;& #102;& #103;& #104;& #105;'; $string = preg_replace_callback('~&#(\d+?);~', create_function('$m', 'return chr($m[1]);'), $string); echo $string; ?> Только пробелы из $string убери, а то форум их превращает в обычные символы
NOmeR1 Ты с античата? Я там задавал этот вопрос(doom123) и предложил этот мотод но он не сработал =\\ Если бы это были англиские или русские символы то всё нормально ... но на этих не срабатывает =\ [vs] А зачем портить входяшие в БД данные?
Не, я это понимаю. Я не понимаю зачем выходящие портить В конце концов, для удаления тегов есть strip_tags, а чтобы вставить теги в сообщение, можно сделать тег Код (Text): .
А если не надо их удалять а надо отображать ? Данные надо хранить в базе, и отображать в браузере, а вырезание/фильтрование/и.т.д. это нарушение всех мыслимых и немыслимых морально этических норм (wordpress например такой фигнёй страдает)
кстате если ктото знает по какой причите символы превращяются в такое будет очень интересно послушать!
делал utf-8 и windows-1251 была 1 странность када сайт стоял на денвере всё было ок (в кодировке утф-8) перенёс сайт на xampp так место русских символов отоброжались иероглифы ..
Fatal Когда ты отправляешь форму со страницы в UTF-8 то ничего не переделывается, а так как в однобайтовых кодировках (windows-1251 например) нет таких символов, то браузер преобразует их в такие фишки (если интересны подробности читай W3C)
Vladson Уху походу всё изза денвера) непонятно ваще почему браузер никак не отреогировал на смену кодировки в мета теге када сайт стоял на денвере .. этож от веб сервера не зависит ... а при переносе на xampp всё помнялось на utf.
Причин может быть много, единственный способ узнать это разобраться самому (телепатов читающих настройки серверов и тут маловато)