Доброго дня! Сделал вывод русского текста из таблицы phpmyadmin, но на выходе получились знаки вопроса. Подскажите, в чем может быть дело, или может как правильно подставить функция iconv? Код (Text): $_SESSION['id'] = $result['id'];
Эта проблема стара как мир и решена много раз. Решение легко найти как в гугле, так и в поиске по форуму. Для корректного отображения символов нужно обеспечить одинаковую кодировку (utf-8) для: - meta тэга с указанием charset; - самого файла в котором лежит php скрипт; - соединения браузера с сервером; - соединения сервера с базой данных; - таблицы в базе данных (utf8_general_ci или utf8mb4_general_ci).
Тут есть нюанс - нужна кодировка самого файла в формате "utf-8 без BOM", а не просто "utf-8". Я знаю точно, что такую кодировку можно выбрать в Notepad++.
Записываю значение в сессию, при этом стоит кодировка utf-8 везде. Где найти кодировки соединение браузера с сервером и соединение сервера с базой? Просто был уверен, что там аналогичные стоят. Вылезает при выводе из сессии. В сессию сохранял в windows-1251.
Спасибо! А вот на этом скриншоте UTF-8-BOM это минус BOM или тире или нужно обновленную версию скачивать?
Кинь скрин, если есть мозила то слева от адреса есть значок, нажми. Откроется инфо о странице, тоже заскринь
похоже что ты уперся в кодировку соединения с бд. Тебе уже подсказывали как решить эту проблему. Вот эту штуку сразу после соединения с БД.
Если мне Notepad++ предлагает обновление, то я как правило обновляю. В Вашем случае "UTF-8-BOM" думаю это "UTF-8 без BOM" - попробуйте.
Без конвертации. Вырезаю текст со страницы, далее выставляю другую кодировку и обратно вставляю текст. Делаю так, потому что иначе текст превращается в каракули в самом редакторе.