Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Помогите подключится к БД с параметрами кодировки UTF-8

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Новый вариант подключения к БД
elikmhs
Отправлено: 25 Июля, 2018 - 14:47:33
Post Id


Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Июль 2018  


Помог: 0 раз(а)




Помогите подключится к БД с параметрами кодировки UTF-8

CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. class DB{
  3.     public $db;
  4.     private $host = "localhost";
  5.     private $database = "staff";
  6.     private $user = "root";
  7.     private $pass = "";
  8.     public function __construct(){
  9.         try{
  10.             $this->db = new PDO("mysql:host=".$this->host.";dbname=".$this->database, $this->user, $this->pass);
  11.         }catch (PDOException $exception){
  12.             echo $exception->getMessage();
  13.         }
  14.     }
  15. }
  16. $db= new DB();
 
 Top
Мелкий Супермодератор
Отправлено: 25 Июля, 2018 - 15:00:12
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




charset=utf8 в DSN добавьте и всё.


-----
PostgreSQL DBA
 
 Top
elikmhs
Отправлено: 25 Июля, 2018 - 15:32:42
Post Id


Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Июль 2018  


Помог: 0 раз(а)




Мелкий пишет:
charset=utf8 в DSN добавьте и всё.


Прошу меня извинить но я не знаю как добавить в DNS

Если есть возможность помогите подправить выше указанный PHP код.

Благодарю за поддержку.
 
 Top
Мелкий Супермодератор
Отправлено: 25 Июля, 2018 - 15:36:11
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




Не в DNS, а в DSN. Data Source Name в PDO так называется, строка-первый параметр в new pdo.


-----
PostgreSQL DBA
 
 Top
elikmhs
Отправлено: 25 Июля, 2018 - 16:12:02
Post Id


Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Июль 2018  


Помог: 0 раз(а)




Мелкий пишет:
Не в DNS, а в DSN. Data Source Name в PDO так называется, строка-первый параметр в new pdo.


Я пытаюсь но без успешно. Пожалуйста помогите подправит код.
(Добавление)
CODE (htmlphp):
скопировать код в буфер обмена
  1. $this->db->exec("set names utf8");


Вот что требовалось дописать
 
 Top
Мелкий Супермодератор
Отправлено: 25 Июля, 2018 - 17:08:49
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




Это неправильный способ и в мануале отдельно написано почему: http://php.net/manual/en/mysqlin...epts.charset.php

PHP:
скопировать код в буфер обмена
  1. new PDO("mysql:host=localhost;dbname=world;charset=utf8", 'my_user', 'my_pass');


-----
PostgreSQL DBA
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB