Функция htmlspecialchars()
-
- phpBB 1.0.0
- Сообщения: 5
- Стаж: 18 лет 8 месяцев
Функция htmlspecialchars()
в файлах viewtopic.php и viewforum.php, используется функция htmlspecialchars(), я так понимаю что она преобразует введенный текст в HTML сущности типа (#1085;овая).
Проблема в том что она название темы (если она написана на русском) по какой-то причине не преобразовывает обратно и отображает в названии совсем не то что хотелось бы.
В БД русские названия тем хранятся в HTML сущностях (#1085;ова#1103).
Есть обратная ей функция - html_entity_decode -- Преобразует HTML сущности в соответствующие символы. Может быть стоит ее применить в обратном преобразовании?
Проблема в том что она название темы (если она написана на русском) по какой-то причине не преобразовывает обратно и отображает в названии совсем не то что хотелось бы.
В БД русские названия тем хранятся в HTML сущностях (#1085;ова#1103).
Есть обратная ей функция - html_entity_decode -- Преобразует HTML сущности в соответствующие символы. Может быть стоит ее применить в обратном преобразовании?
-
- phpBB 1.4.4
- Сообщения: 141
- Стаж: 18 лет 9 месяцев
Vova
чета вы гоните )
htmlspecialchars преобразует исключительно спецсимволы, но никак не русские буквы. Если у вас так храняться русские буквы то разберитесь с кодировкой, она должна быть везде win-1251 (cp1251_general_cs)
чета вы гоните )
htmlspecialchars преобразует исключительно спецсимволы, но никак не русские буквы. Если у вас так храняться русские буквы то разберитесь с кодировкой, она должна быть везде win-1251 (cp1251_general_cs)
Вниманию чертей!
Прежде чем задать очередной идиотский вопрос - прочитай сначала правила, потом общие ошибки новичков, Руководство пользователя и частозадаваемые вопросы, после чего, если желание задавать вопрос еще не пропало - на основании шаблона запроса можно задать вопрос в соответствующем разделе конференции.
Необходимо помнить, что поддержка оказывается только для последней версии и только на конференции.
Прежде чем задать очередной идиотский вопрос - прочитай сначала правила, потом общие ошибки новичков, Руководство пользователя и частозадаваемые вопросы, после чего, если желание задавать вопрос еще не пропало - на основании шаблона запроса можно задать вопрос в соответствующем разделе конференции.
Необходимо помнить, что поддержка оказывается только для последней версии и только на конференции.
-
- phpBB 1.0.0
- Сообщения: 5
- Стаж: 18 лет 8 месяцев
Где хранятся? Они в базу попадают уже в таком виде. Значит это phpBB их сначала преобразовывает.Если у вас так храняться русские буквы то разберитесь с кодировкой
Где везде? В lang_main.php менял переменнуюона должна быть везде win-1251 (cp1251_general_cs)
$lang['ENCODING'] = 'win-1251; - не помогает, в БД менял все текстовые поля на 'win-1251 - не помогает.
-
- phpBB 1.4.4
- Сообщения: 141
- Стаж: 18 лет 9 месяцев
Vova
Да это вы отправляете туда в тако кодировке
Слушайте, у вас случаем не с EZ порталом такая проблема?
Да это вы отправляете туда в тако кодировке
Слушайте, у вас случаем не с EZ порталом такая проблема?
Вниманию чертей!
Прежде чем задать очередной идиотский вопрос - прочитай сначала правила, потом общие ошибки новичков, Руководство пользователя и частозадаваемые вопросы, после чего, если желание задавать вопрос еще не пропало - на основании шаблона запроса можно задать вопрос в соответствующем разделе конференции.
Необходимо помнить, что поддержка оказывается только для последней версии и только на конференции.
Прежде чем задать очередной идиотский вопрос - прочитай сначала правила, потом общие ошибки новичков, Руководство пользователя и частозадаваемые вопросы, после чего, если желание задавать вопрос еще не пропало - на основании шаблона запроса можно задать вопрос в соответствующем разделе конференции.
Необходимо помнить, что поддержка оказывается только для последней версии и только на конференции.
-
- phpBB 1.0.0
- Сообщения: 5
- Стаж: 18 лет 8 месяцев
-
- phpBB 1.4.4
- Сообщения: 141
- Стаж: 18 лет 9 месяцев
ну с русскими буквами все ок... Чтоже вас не устраивает?
Вниманию чертей!
Прежде чем задать очередной идиотский вопрос - прочитай сначала правила, потом общие ошибки новичков, Руководство пользователя и частозадаваемые вопросы, после чего, если желание задавать вопрос еще не пропало - на основании шаблона запроса можно задать вопрос в соответствующем разделе конференции.
Необходимо помнить, что поддержка оказывается только для последней версии и только на конференции.
Прежде чем задать очередной идиотский вопрос - прочитай сначала правила, потом общие ошибки новичков, Руководство пользователя и частозадаваемые вопросы, после чего, если желание задавать вопрос еще не пропало - на основании шаблона запроса можно задать вопрос в соответствующем разделе конференции.
Необходимо помнить, что поддержка оказывается только для последней версии и только на конференции.
-
- phpBB 1.0.0
- Сообщения: 5
- Стаж: 18 лет 8 месяцев
-
- phpBB 1.4.4
- Сообщения: 141
- Стаж: 18 лет 9 месяцев
Vova
чета вы намутилинереальное )))
чета вы намутилинереальное )))
Вниманию чертей!
Прежде чем задать очередной идиотский вопрос - прочитай сначала правила, потом общие ошибки новичков, Руководство пользователя и частозадаваемые вопросы, после чего, если желание задавать вопрос еще не пропало - на основании шаблона запроса можно задать вопрос в соответствующем разделе конференции.
Необходимо помнить, что поддержка оказывается только для последней версии и только на конференции.
Прежде чем задать очередной идиотский вопрос - прочитай сначала правила, потом общие ошибки новичков, Руководство пользователя и частозадаваемые вопросы, после чего, если желание задавать вопрос еще не пропало - на основании шаблона запроса можно задать вопрос в соответствующем разделе конференции.
Необходимо помнить, что поддержка оказывается только для последней версии и только на конференции.
-
- phpBB 1.0.0
- Сообщения: 5
- Стаж: 18 лет 8 месяцев
-
- phpBB 1.4.4
- Сообщения: 141
- Стаж: 18 лет 9 месяцев
Vova
1481714-стучись попробую помоч
))
1481714-стучись попробую помоч

Вниманию чертей!
Прежде чем задать очередной идиотский вопрос - прочитай сначала правила, потом общие ошибки новичков, Руководство пользователя и частозадаваемые вопросы, после чего, если желание задавать вопрос еще не пропало - на основании шаблона запроса можно задать вопрос в соответствующем разделе конференции.
Необходимо помнить, что поддержка оказывается только для последней версии и только на конференции.
Прежде чем задать очередной идиотский вопрос - прочитай сначала правила, потом общие ошибки новичков, Руководство пользователя и частозадаваемые вопросы, после чего, если желание задавать вопрос еще не пропало - на основании шаблона запроса можно задать вопрос в соответствующем разделе конференции.
Необходимо помнить, что поддержка оказывается только для последней версии и только на конференции.
-
- phpBB 1.4.1
- Сообщения: 43
- Стаж: 18 лет 10 месяцев
- Откуда: Владивосток
Проблема как всегда не с phpBB 2.0.21, а с мозгом.
Внимательно смотрим: $lang['ENCODING'] = 'win-1251; не поможет, это неправильно. Правильное наименование русской кодировки windows-1251.
Поскольку в вашей странице стоитто браузер такой кодировки не знает, и потому все, что попадает в поля формы преобразуется.
Программы тупы, если наименование кодировки не соответствует стандарту, то она его не поймет и проигнорирует. Уберите черточку или напишите windows1251 слитно и получите тот же результат.
Русские буквы преобразует не phpbb, они меняются при вводе в поле формы. В php попадают уже сущности HTML.Vova писал(а):Где хранятся? Они в базу попадают уже в таком виде. Значит это phpBB их сначала преобразовывает.Если у вас так храняться русские буквы то разберитесь с кодировкойГде везде? В lang_main.php менял переменнуюона должна быть везде win-1251 (cp1251_general_cs)
$lang['ENCODING'] = 'win-1251; - не помогает, в БД менял все текстовые поля на 'win-1251 - не помогает.
Внимательно смотрим: $lang['ENCODING'] = 'win-1251; не поможет, это неправильно. Правильное наименование русской кодировки windows-1251.
Поскольку в вашей странице стоит
Код: Выделить всё
<meta http-equiv="Content-Type" content="text/html; charset=win-1251">
Программы тупы, если наименование кодировки не соответствует стандарту, то она его не поймет и проигнорирует. Уберите черточку или напишите windows1251 слитно и получите тот же результат.