Advertisement
zero50x

PHP ООП класс работы с БД

Aug 14th, 2017
167
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.58 KB | None | 0 0
  1. class DB
  2. {
  3.     // объявление свойства
  4.     protected $host = 'localhost';
  5.     protected $db =   'loadbot_db';  // имя базы
  6.     protected $charset = 'utf8';
  7.     protected $user = 'cvr55';       //  имя юзера
  8.     protected $pass = 'DDee44rr55';  //  пароль юзера
  9.  
  10.     public function __construct() {
  11.  
  12.         $dsn = "mysql:host=$this->host;dbname=$this->db;charset=$this->charset";
  13.         $opt = array(
  14.             PDO::ATTR_ERRMODE            => PDO::ERRMODE_EXCEPTION,
  15.             PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC
  16.         );
  17.  
  18.         try {
  19.             $this->DBconnect = new PDO($dsn, $this->user, $this->pass, $opt);
  20.         }
  21.         catch( PDOException $Exception ) {
  22.             echo $Exception->getMessage();
  23.             echo $Exception->getCode();
  24.             if(!empty($Exception->getCode())){
  25.                 die('Ошибка');
  26.             }
  27.         }
  28.     }
  29.  
  30.     // проверка на URL
  31.     public function printHello() {
  32.         echo $this->host.'<br>';
  33.         echo $this->db.'<br>';
  34.     }
  35.  
  36.     // проверка на наличие e-mail в базе 0 - нет, иначе да
  37.     public function checkDoubleMail($table, $column, $email) {
  38.         // Проверим есть ли такой юзер
  39.         $auth = $this->DBconnect->prepare('SELECT COUNT(*) FROM `'.$table.'` WHERE `'.$column.'`=:mail');
  40.         $auth->bindParam(':'.$column, $email, PDO::PARAM_STR);
  41.         $auth->execute();
  42.         $Count = $auth->fetchAll();
  43.         return intval(implode('', $Count[0]));
  44.     }
  45.  
  46. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement