Всем привет, подключаюсь через Red Bean php к бд phpmyadmin, Сохраняет все данные кроме кириллицы. Как настроить кодировку? Пробовал в .htaccess: AddDefaultCharset Windows-1251, AddDefaultCharset UTF-8 В код $charset="utf8"; header("Content-Type: text/html; charset=utf-8"). Безуспешно
@EmilioSmerty phpmyadmin это не БД, а инструмент для работы с БД. А БД это MySQL. Чтобы не-латиница сохранялась правильно, надо указывать кодировку соединения. Просто найди как в redbeanphp выполнить команду "SET NAMES UTF8" и выполнляй её каждый раз сразу после соединения с базой.
Возможно это?( Единственное что есть в документации ) $enforceUTF8encoding : boolean setEnforceUTF8encoding(boolean $toggle) : void
Я без понятия о чем ты сейчас пишешь. Что-то специфичное для этой библиотеки. А я тебе посоветовал стандартное решение, которое от библиотек не зависит.
@EmilioSmerty, к тому-же надо/можно установить используемый набор символов (character set) при создании схемы (базы данных), таблицы и поля таблицы. Подробнее
Новые таблицы в базе создаются с кодировкой базы по умолчанию, если явно не указана другая кодировка. Короче, есть два фактора: 1. кодировка самой таблицы. в каком виде база хранит твой текст. 2. кодировка соединения, т.е. как база воспринимает твоего клиента (php). в каком виде подразумеваются входные и выходные данные. mysql умеет перекодировать данные "на лету". Если в обоих случаях указана UTF8, то все хорошо. Иначе есть варианты когда приемлемо, а когда хреново.
В чём проблема заключалась? В настройках схемы (базы данных), или соединения с базой данных, или ещё в чём?
Точно не схемах, проблема была в том, что не смог найти как установить кодировку utf-8 при использовании Red Bean PHP. Если без orm, то делается это вот так: mysqli_set_charset($bd, 'utf8');