Если использовать SQLlite, которая уже настроена по умолчанию, то все работает на ура, т.е. вообще ничего дополнительно делать не нужно, кроме включения pdo в php.ini. Если хотите прикрутить к mysql, то проблема должна быть исключительно в настройках базы. Код здесь ни при чем. У меня на mysql все завелось также с полпинка.
Если использовать SQLlite, которая уже настроена по умолчанию, то все работает на ура, т.е. вообще ничего дополнительно делать не нужно, кроме включения pdo в php.ini. Если хотите прикрутить к mysql, то проблема должна быть исключительно в настройках базы. Код здесь ни при чем. У меня на mysql все завелось также с полпинка.
Если исправить view'ы и поставить вместо $this->сontentDisplay, $thos->content, то все пучком.
Если сравнить значения $this->сontentDisplay и $this->content в базе, видно, что после обработки $this->сontentDisplay - куда-то удаляются русские символы и добавляется обрамляющий <p></p>
И еще… Если напрямую в базу прописать кириллицу, все отлично отображает.
Странно как-то… А какая кодировка в системе по умолчанию?
Попробуй после соединения с базой отправить запрос SET NAMES utf8, может быть получится… у меня это решало проблему крякозябров ( хотя и в системе и в БД использовалась одна и та же кодировка).
Если сравнить значения $this->сontentDisplay и $this->content в базе, видно, что после обработки $this->сontentDisplay - куда-то удаляются русские символы и добавляется обрамляющий <p></p>
И еще… Если напрямую в базу прописать кириллицу, все отлично отображает.
И заголовки нормально отображает… О, кстати.
Если поле content содержит данные в UTF-8, а поле contentDisplay нет, то с базой должно быть все окей. С кодом (оригинальным), как говорилось, тоже все все порядке. Скорее всего, ошибка происходит до обработки скриптами данных, получаемых от браузера.
Проверьте настройки кодировки браузера для страницы. Возможно, то, что он отправляет в форме, вырезается при проверке. Кроме того, посмотрите, какие данные и в какой кодировке браузер отправляет на сервер при отправке формы. Тупо выведите весь $post в представлении. В крайнем случае, сделайте все сызнова: обновите бд и скрипты блога.
Если поле content содержит данные в UTF-8, а поле contentDisplay нет, то с базой должно быть все окей. С кодом (оригинальным), как говорилось, тоже все все порядке. Скорее всего, ошибка происходит до обработки скриптами данных, получаемых от браузера.
Проверьте настройки кодировки браузера для страницы. Возможно, то, что он отправляет в форме, вырезается при проверке. Кроме того, посмотрите, какие данные и в какой кодировке браузер отправляет на сервер при отправке формы. Тупо выведите весь $post в представлении. В крайнем случае, сделайте все сызнова: обновите бд и скрипты блога.
Первое, надо прописать в Денвер:\usr\local\mysql5\my.cnf
вот такое чудо:
# ==============================================================
# === БЫЛО === default-character-set = cp1251
# ==============================================================
default-character-set = utf8
character-sets-dir = /usr/local/mysql4/share/charsets
#
# Параметры MySQL-сервера.
#
[mysqld]
# Использовать режим совместимости с клиентами MySQL 3.x и MySQL 4.0.
old-passwords
# Кодировка баз данных по умолчанию.
default-character-set = utf8 # было cp1251
init-connect = "set names utf8" # было cp1251
Не запускаеться блог блин , пишет YiiBase::include(PDO.php) [<a href='function.YiiBase-include'>function.YiiBase-include</a>]: failed to open stream: No such file or directory
вроде там все поумолчанию должно устанавливаться, или я че то не понял. У меня на винде все и не денвер а собственная подборка (Apach и MySQl )
Так у меня запускаеться Батник и ничего не спрашивает, что и куда. И отрабатывает ничего не делая. И я чето не понял какой shell у меня винда же. (извиняюсь конечно за свое ламерство )
shell - это одна из опций yiic-а, при запуске yiic shell - должно открыться что-то типа командной строки (не командный шелл твоей ОС, а “шел” (подобие) реализованный в Yii), которая может принимать команды Yii или произвольный php-код. Покажи плз, строку как ты все это запускаешь
CLI установлено?? Еще…php.exe есть в переменной path???