Товарищи, подскажите как решить проблему с большой буквой И. Дело в том, что где используется большая буква "И" слово сразу же перестает отображаться. БД проверял, кодировка используется UTF - 8 . PS 1.7. Даже в админке такие слова, как : "Импорт, информация" не отображаются
Необходимо в файле
/classes/db/DbPDO.php добавить код в функцию connect()
В итоге функция должна выглядеть следующим образом
Код:
public function connect()
{
try {
$this->link = $this->getPDO($this->server, $this->user, $this->password, $this->database, 5);
} catch (PDOException $e) {
throw new PrestaShopException('Link to database cannot be established: '.$e->getMessage());
}
// UTF-8 support
if ($this->link->exec('SET NAMES \'utf8\'') === false) {
throw new PrestaShopException('PrestaShop Fatal error: no utf-8 support. Please check your server configuration.');
}
$this->link->exec('SET SESSION sql_mode = \'\'');
return $this->link;
}
Соответственно и на сервере везде кодировка должна быть UTF-8, как у базы данных, так и у всех файлов.
После внесения данных изменений возможно весь русский текст на сайте будет нечитаемым, так как содержимое баз данных уже не в той кодировке. Для того чтобы исправить необходимо перекодировать все содержимое базы данных. Но у меня перекодировать не получилось, мне пришлось заново заполнять русский текст.
Если сайт новый то проще внести изменение в код до установки Prestashop на свой хостинг и производить установку уже с новым файлом DbPDO.php