У меня проблема с тем, что некоторые заголовки для переключателей отображаются пустыми из-за неанглийских символов в заголовке.
Вот пример строки из базы данных, которая отображается пустой.
WATERTOWN / 171 Watertown St / Rte 16 / Newtonÿ
Последний символ в строке ÿ, это то, что вызывает проблему в этом случае.
Как я могу исправить эту проблему?
На самом верху моей страницы у меня есть этот код
<meta charset="utf-8">
Я не уверен, если персонаж ÿ не является действительным UTF-8 или нет.
Я пытался использовать метод utf8_encode()
на данные, прежде чем сохранить их в базе данных SQL Server, но это не сработало.
В чем проблема и как ее исправить?
PHP немного расслаблен во всем, в том числе и в кодировании. Нет реальной кодировки, которую вы, вероятно, знаете из других языков.
На самом деле он обрабатывает строку за байтом и передает их на выход.
Что вы можете сделать (если еще не сделали): установите кодировку соединения с базой данных на UTF-8.
И дважды проверьте, если этот символ еще не в базе данных;)
(И да, ÿ, конечно, символ UTF-8;) но выглядит немного, что вы используете другую кодировку для соединения с базой данных, чем то, что на самом деле хранится в базе данных)
Других решений пока нет …