Есть класс SQLHelper, но ничего неработает. не могу понять в чем дело.
class SQLHelper {
/**
* http://phpfaq.ru/pdo
*/
private $link;
function __construct(){
$dsn = "mysql:host=".DBHOST.";dbname=".DBNAME.";charset=".DBCHARSET;
$opt = array(
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
PDO::ATTR_EMULATE_PREPARES => false // Выключает режим эмуляции! проблемы с LIMIT ?,?
);
try {
$this->link = new PDO($dsn, DBUSER, DBPASS, $opt);
throw new Exception("Error Processing Request", 4);
} catch (Exception $e) {
die("Error! " . $e->getMessage());
}
}
public function getCon() { return $this->link; }
private $errors = array();
private $result = NULL;
// метод выполнения запроса SQL !!!
public function queryExec($sql, $data=false){
$sql1 = "SELECT * FROM `testTables`";
$stmt = $this->getCon()->prepare($sql1);
$stmt->execute()->fetch();
if (!$data)
return $stmt->execute();
else
return $stmt->execute($data);
/*
НЕ УДАЛЯТЬ ---------------------------------------------------------
Запросы можно использовать вот так.................!
# just exec
$this->queryExec($sql);
$this->queryExec($sql, $data);
# all rows
$result = $this->queryExec($sql, $data);
foreach ($result as $row) echo $row['name'];
# one row
$row = $this->queryExec($sql, $data)->fetch();
# one cell
$count = $this->queryExec($sql)->fetchColumn(); // можно использовать для подсчета ячеекы
# column
$ids = $this->queryExec($sql)->fetchAll(PDO::FETCH_COLUMN);
НЕ УДАЛЯТЬ ---------------------------------------------------------
*/
}
}
Скорее всего у вас не передаются DBHOST, DBNAME, DBCHARSET.
Вообщем нашел. результат у меня такой получился.
class SQLHelper {
/**
* http://phpfaq.ru/pdo
*/
private $link;
private $debugger;
function __construct(){
$this->debugger = new Debugger();
require_once ('config.php');
$dsn = "mysql:host=".DBHOST.";dbname=".DBNAME.";charset=".DBCHARSET;
$opt = array(
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
PDO::ATTR_EMULATE_PREPARES => false // Выключает режим эмуляции! проблемы с LIMIT ?,?
);
try {
$this->link = new PDO($dsn, DBUSER, DBPASS, $opt);
if (!$this->link) throw new Exception("i can't connect to database!", 4);
} catch (Exception $e) {
die("Error! " . $e->getMessage());
}
}
public function getCon() { return $this->link; }
private $errors = array();
private $result = NULL;
// метод выполнения запроса SQL !!!
public function getInformation($sql, $data=false){
$stmt = $this->getCon()->prepare($sql);
try {
$check = !$data ? $stmt->execute() : $stmt->execute($data);
if (!$check) throw new Exception("SQL Request not executed!", 1);
$row = $stmt->fetchAll();
} catch (Exception $e) {
echo $e->getMessage();
}
$debugger->preview($row);
}
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Хочу вынести возможность управления порядка товара, где идут метки, категория, дата и тд
Всем доброго настроения! Я учусь, не пинайте ) Помогите составить запрос mysql