Ошибка с PDO

php ООП pdo

/functions.php/
class DB {
//Параметры для подключения
protected $hostname = "localhost";
protected $password = "root";
protected $user = "root";
protected $name = "blog";
protected $db;

public function connect() { //Подключаемся...
try {
$this->db = new PDO('mysql:host='.$this->hostname.'; dbname='.$this->name, $this->user, $this->password);
$this->db->query('SET NAMES utf8');
return true;
}
catch (PDOException $e) {
echo " Извините. Но не удалось подключиться к базе данных.";
file_put_contents('PDOErrors.txt', $e->getMessage(), FILE_APPEND);
}
}

public function create($name, $query){ // Создаем таблицы
$result = "CREATE TABLE $name($query)";
$stmt = $this->db->prepare($result);
$stmt->execute();
}
}

/setup.php/
include_once 'functions.php';

echo '<h3>Настройка</h3>';

$db = new DB();
$db->create('data','id INT(5) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
cat INT(1),
meta_d VARCHAR(255),
meta_k VARCHAR(255),
description TEXT,
text TEXT,
view INT(7),
author VARCHAR(100),
date DATE,
mini_img VARCHAR(255),
title VARCHAR(255),
INDEX(text(20)),
INDEX(meta_d(5)),
INDEX(meta_k(5)),
INDEX(author(5)),
INDEX(description(5))');

$db->create('categories', 'id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
title VARCHAR(255),
text TEXT,
INDEX(text(20))');
------------------------------------------
подскажите где ошибка, уже все перерыл, не знаю что делать. За ранее благодарен!
Ответы:
А где вызов функции connect() из класса DB в файле setup.php?
>> А где вызов функции connect() из класса DB в файле setup.php?


11 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.