Кто-то пишет свой набор функций для работы с MySQL, кто-то работает с фреймворками где обычно есть полный набор необходимых инструментов, а мне вот например нравиться PDO. И так, для подключения к базе —
<?php $dbhost ='localhost'; // username and password to log onto db server $dbuser ='user'; $dbpass ='password'; // name of database $dbname='base'; //Charset $sqlchar='utf8'; $db = new PDO ( 'mysql:host=' . $dbhost . ';dbname=' . $dbname, $dbuser, $dbpass); $db->query ( 'SET character_set_connection = '.$sqlchar ); $db->query ( 'SET character_set_client = '.$sqlchar ); $db->query ( 'SET character_set_results = '.$sqlchar ); ?>
Получаем одну строку:
$row = $db->query(«select row from tablename WHERE 1;»)->fetch();
Все строки
$row = $db->query(«select row from tablename WHERE 1;»)->fetchAll();
Определения кода ошибки
$ercode = $db->exec(«delete from tablename where id='».$id.»‘;»)->errorCode();
print_r($ercode);
print_r($ercode);
Определения последнего ID
$lastid = $db->lastInsertId();
Определение количества строк
$player_stat = $db->query(«SELECT COUNT(*) FROM players WHERE name = ‘».$val[‘name’].»‘;»)->fetchColumn()
Вставить новую строку, если данные хранятся в массиве $t в формате $t[название столбца] = данные
$q = $db->prepare(«INSERT INTO table («.(implode(«,»,array_keys($t))).») VALUES (‘».(implode(«‘,'»,$t)).»‘);»)->execute();
Изменяем строку
$db->prepare(«UPDATE table SET column=’data’ WHERE id = ‘1’;»)->execute();
Для того что бы проверить подключены ли модуль php-pdo и php-pdo_mysq:
<?php if ( !extension_loaded('pdo') ){ .... }elseif ( !extension_loaded('pdo_mysql') ) { .... } ?>
Дмитрий says:
Спасибо полезно было почитать
Сергей says:
Вот очень хорошая статья про PDO:
http://obodyanskyy.com/my_PDO_class