Сделать PDO соединение в кодировке utf8 - PullRequest
0 голосов
/ 17 сентября 2018

Я пытаюсь закодировать соединение, чтобы оно стало UTF8.Я смотрел на некоторые другие сообщения, но по какой-то причине это не работает.Понятия не имею, что я делаю неправильно.

Вот так выглядит мой конн

 $this->db_conn = new PDO("mysql:host=" . $this->host . ";dbname=" . $this->db_name, $this->username, $this->password);

И это то, что я пытаюсь сделать , но он говорит, что это не правильно

 $this->db_conn = new PDO("mysql:host=" . $this->host . ";dbname=" . $this->db_name, $this->username, $this->password.";charset=utf8");

Дает эту ошибку Ошибка подключения к базе данных: SQLSTATE [28000] [1045] Доступ запрещен для

Я использую MySql

Ответы [ 2 ]

0 голосов
/ 17 сентября 2018

Переместите вашу кодировку перед пользователем и паролем.

$this->db_conn = new PDO("mysql:host=" .
     $this->host .
     ";dbname="  . $this->db_name .
     ";charset=utf8" ,
     $this->username,
     $this->password);
0 голосов
/ 17 сентября 2018

Это должно быть частью первого аргумента.Ваша вторая версия должна выглядеть следующим образом:

$this->db_conn = new PDO("mysql:host=" . $this->host . ";dbname=" . $this->db_name.";charset=utf8", $this->username, $this->password);

Ошибка, которую вы получаете, состоит в том, что ваш пароль неверный (вы добавляете «; charset = utf8» к паролю, и ваш пароль, вероятно, непокончить с этим).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...