В коде есть класс для работы с PDO (можно в любом месте использовать без global (так удобно)), и есть несколько примеров использования!
<?php
/* Настройки базы данных */
$db_host = 'localhost';
$db_user = 'root';
$db_pass = '';
$db_name = 'mas';
/* Класс для работы с БД, делал сам, тут всё просто, советую и вам так сделать!:) */
class DB {
private static $db;
/* Здесь подключение и т.п. */
public static function init($host, $user, $pass, $name) {
try {
$db = new PDO('mysql:host='.$host.';dbname='.$name.';', $user, $pass); // Само подключение
$db->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC);
$db->query('SET NAMES `utf8`'); // Устанавливаем кодировку
} catch(PDOExcetsion $error) {
exit($error->getMessage());
}
self::$db = $db;
}
/* Здесь короче нужная штука:D */
public static function run() {
return self::$db;
}
}
/* Подключаемся к базе через наш класс */
DB::init($db_host, $db_user, $db_pass, $db_name);
/* Функция с использованием базы данных */
function result($query) {
$row = DB::run()->query($query)->fetch();
return $row[0];
}
/* Правильная вставка строки */
$sql = DB::run()->prepare('INSERT INTO `users` (`name`, `pass`) VALUES (?, ?)');
$values = array('abler98', 'password_abler98');
$sql->execute($values);
/* Считаем кол-во строк в таблице */
$row = DB::run()->query('SELECT COUNT(`id`) FROM `users`')->fetch();
echo 'Записей в таблице: '.$sql[0].'<br />';
/* Выбираем все записи из таблицы и выводим (альтернатива while() ) */
$users = DB::run()->query('SELECT * FROM `users`')->fetchAll();
foreach($users as $key => $user) {
echo 'Имя: '.$user['name'].', Пароль: '.$user['pass'].'<br />';
}
/* Просто выводим все записи из таблицы */
$sql = DB::run()->query('SELECT * FROM `users`');
while($user = $sql->fetch()) {
echo 'Имя: '.$user['name'].', Пароль: '.$user['pass'].'<br />';
}
?>