Есть 2 варианта ПДО и МуСКУЛай.
По сути своей (Если брать ООП интерфейс MySQLi) они не сильно отличаются. Однако, ПДО универсальнее, а МуСКУЛи быстрее. Но как бы там ни было, я более предрасположен к MySQLi ООП. Именно о нем и пойдет речь в этом "куске"
1. Подключение к базе
$vht = new mysqli('localhost', 'romanvht_user', 'romanvht_password', 'romanvht_db');
if($vht->connect_errno){
die('Ошибка подключения '.$mysqli->connect_error);
}
2. Обычные запросы
Тут тоже все предельно просто
$vht->query("SELECT `gg` FROM `table`"); // Запрос, аналог mysql_query
$sql = $vht->query("SELECT `gg` FROM `table`")->num_rows; // К-во строк, аналог mysql_num_rows
$sql = $vht->query("SELECT `gg` FROM `table`")->field_count; // Выводит уже не строки а стобцы (к-во)
$sql = $vht->query("SELECT `gg` FROM `table`")->fetch_assoc(); // Преобразует данные в именной массив
//Вывод
echo $sql['name'];
//Пример в цикле
$sql = $vht->query("SELECT `gg` FROM `table`");
while($a = $sql->fetch_assoc()){
echo $sql['name'];
}
$sql = $vht->query("SELECT `gg` FROM `table`")->fetch_row(); // Преобразует данные в числовой (нумерованный) массив, используется аналогично конструкции выше
$sql = $vht->insert_id; // Последний сгенерированный ID
3. Защита
$txt = 'Тут что-то есть к примеру';
$text = $vht->real_escape_string($t); // Аналог mysql_real_escape_string
//Защищенный запрос (Подготовленное выражение)
$sql = $vht->prepare("INSERT INTO `gg` VALUES (?, ?)"); //#1
$sql->bind_param('si', $name, $date); //#2
$name = 'Имя';
$date = 18;
$sql->execute(); //#3
Тем кто не знаком с таким видом выполнения запроса, может показаться что тут что-то очень непонятное, но на самом деле и тут все предельно просто!
#1 Старт запроса
#2 Задаем "вопросикам" значения через переменные (можно и просто ('si', 'имя', 'возраст'))
#3 Выполнение запроса
Некоторых может смутить зачем si и что это?
Дело в том, что функция сама экранирует все "ненужные" символы в строке, нам нужно лишь указать тип строк.
i - числовые значения (INT), d - DOUBLE и FLOAT значения, b - BLOB значения, s - все остальное.
Гораздо безопаснее использовать как раз подготовленные выражения для выполнения запросов.
Вот собственно, мы рассмотрели все самое нужное про MySQLi.
Всем спасибо, удачи!