Здравствуйте, написал маленькую обёртку PDO
class DB extends PDO {
private $engine = 'mysql';
private $host = 'localhost'; // Адрес mysql сервера
private $database = 'qa'; // Название Базы Данных
private $user = 'qa'; // Пользователь
private $pass = 'qa'; // Пароль
public function __construct() {
$this->engine = 'mysql';
$this->host = 'localhost';
$dns = $this->engine.':dbname='.$this->database.";host=".$this->host;
parent::__construct( $dns, $this->user, $this->pass );
}
}
Потом подключаю $db = new DB();
После подключения хочу вытащить кое-что из бд:
$sql = $db->query('SELECT site from site_config');
//Установка fetch mode
$sql->setFetchMode(PDO::FETCH_ASSOC);
Появляется вот такие ошибки:
Warning: PDO::query(): SQLSTATE[00000]: No error: PDO constructor was not called in /home/www-data/www/test/core/data/config.php on line 8
Fatal error: Call to a member function setFetchMode() on a non-object in /home/www-data/www/test/core/data/config.php on line 10
Чтобы была возможность напрямую пользоваться классом, так как делаете это вы, то нужно в конструкторе возвращать instance PDO класса.
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$this->db = $db;
return $db;
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
После регистрации пользователю записывается в базу данных (поле date_reg тип DATE) дата регистрации, вот как подсчитать и вывести количество дней...
Всем добрый день! Ребята,помогите ошибку найти в коде:
Как узнать id пользователя по сессии? $_SESSION['ник пользователя'] можно к нику привязать, но надо к id