webdjuice
@webdjuice
Интересная личность

Нет подключения к базе данных?

Хочу подключится к базе данных,но мне выдаёт ошибку: SQLSTATE[HY000] [1193] Unknown system variable 'NAME'
.В чем может быть ошибка?
database.php
<?php
class Database extends PDO{
    public function __construct() {
        parent::__construct(
                'mysql:host='.DB_HOST.
                ';dbname='.DB_NAME,
                DB_USER,DB_PASS,array(
                    PDO::MYSQL_ATTR_INIT_COMMAND =>"SET NAME 'utf8'".DB_CHAR)
                );
        }
}


И файл config.php
define('DB_HOST', 'localhost');
define('DB_USER', 'admin');
define('DB_PASS', '123456');
define('DB_NAME', 'test');
define('DB_CHAR', 'utf8');
  • Вопрос задан
  • 414 просмотров
Решения вопроса 1
orlov0562
@orlov0562 Куратор тега PHP
I'm cool!
тут тоже похоже ошибка:

"SET NAME 'utf8'".DB_CHAR

должно быть

"SET NAMES '".DB_CHAR."'"
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
Судя по тексту ошибки, вам сообщают, что не не понимаем переменную NAME. Я, не самый большой специалист в MySQL и PDO в частности, но думаю нужно писать 'SET NAMES utf8'.
Ответ написан
Комментировать
@AlikDex
PDO::MYSQL_ATTR_INIT_COMMAND =>"SET NAMES ".DB_CHAR)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы