public static function insertRow($col1, $col2) { $db = new Db(); $query = 'INSERT INTO ' . static::TABLE . '(col1, col2) VALUES (:col1, :col2)'; $options = [':col1' => $col1, ':col2' => $col2]; if (false !== $db->execute($query, $options)) { echo 'Строка col1 = ' . $col1 . ', col2 = ' . $col1 . ' добавлена<br/>'; } else { echo 'insertRow не работает<br/>'; } }
<?php require_once __DIR__ . '/../../index.php'; use App\Db; $db = new Db(); $table = App\Models\User::TABLE; $classUser = '******'; $sql = 'INSERT INTO `' . $table . '` (`name`, `email`) VALUES (:name, :email);'; $args = [':name' => 'Авдеева Лидия', ':email' => '*****@*****.**']; echo 'Добавление нового пользователя<br>'; $res = $db->execute($sql, $args); echo '<pre>'; var_dump($res); echo '</pre><hr>'; $sql_2 = 'INSERT INTO `' . $table . '` (`name`, `email`) VALUES (:name, :email);'; $args_2 = [':name' => 'Авдеева Ксения', ':email' => '*****@*****.**']; echo 'Добавление нового пользователя<br>'; $res = $db->execute($sql_2, $args_2); echo '<pre>'; var_dump($res); echo '</pre><hr>'; echo 'Проверка добавления пользователя, выборка всех пользователей<br>'; $sql_3 = 'SELECT * FROM `' . $table . '`;'; $res = $db->query($classUser, $sql_3); echo '<pre>'; var_dump($res); echo '</pre><hr>'; $sql_4 = 'UPDATE `' . $table . '` SET `name`=:name WHERE id=:id;'; $args_4 = [':name' => 'Борисова Наталья', ':id' => 5]; echo 'Изменение имени пользователя с указанным id<br>'; $res = $db->execute($sql_4, $args_4);
* Date: 03.02.2016 * Time: 17:13 */ ?> <h1>Добавьте к методам execute() и query() еще по одному аргументу - массив подстановок.<br> Протестируйте работу новых методов.</h1> <?php require __DIR__ . '/../autoload.php'; use App\Db; use tests\tcDz1_2; $db = new Db(); // работоспособность метода execute() без подстановок $res1 = $db->execute('CREATE TABLE `dz1_2` ( `id` SERIAL, `art` CHAR(10) UNIQUE, `name` VARCHAR(255));'); var_dump($res1); //bool(true) первый раз; создана таблица dz1_2 в базе данных // работоспособность метода execute() с подстановками $param2 = [':art' => '1358064', ':name' => 'Стол']; $res2 = $db->execute('INSERT INTO dz1_2 (art, name) VALUES (:art, :name);', $param2); var_dump($res2); // bool(true), в таблицу dz1_2 вставлена строка - артикул 1358064, название Стол $param3 = [':art' => '69791459', ':name' => 'Стул']; $res3 = $db->execute('INSERT INTO dz1_2 (art, name) VALUES (:art, :name);', $param3); var_dump($res3); // bool(true), в таблицу dz1_2 вставлена строка - артикул 69791459, название Стул $param4 = [':art' => '919851', ':name' => 'Шкаф']; $res4 = $db->execute('INSERT INTO dz1_2 (art, name) VALUES (:art, :name);', $param4); var_dump($res4);
$table_1 = App\Models\News::TABLE; $class = 'App\\Models\\User'; $class_1 = 'App\\Models\\News'; $sql_1 = ' SELECT * FROM ' . $table . ' WHERE name = :name AND email = :email; '; $sql_2 = ' SELECT * FROM ' . $table . ' WHERE name = :name; '; $sql_3 = ' SELECT * FROM ' . $table . ' WHERE name like :name; '; $sql_4 = ' SELECT * FROM ' . $table . ' WHERE id = :id; '; $sql_5 = ' SELECT * FROM ' . $table_1 . ' ORDER BY id DESC LIMIT 3; '; $sql_6 = ' SELECT * FROM ' . $table_1 . ' WHERE id = :id; '; $arg_1 = ['name' => 'Иванов Иван', 'email' => '*****@*****.**']; $arg_2 = ['name' => 'Иванов Сергей']; $arg_3 = ['name' => '%Иванов %']; $arg_4 = ['id' => 2]; echo '<hr>'; echo 'Поиск пользователя по Имени и Email (есть ли такой)<br>'; $res = $db->execute($sql_1, $arg_1); echo '<pre>'; var_dump($res); echo '</pre><hr>'; echo 'Выборка данных пользователя по Имени и Email<br>'; $result = $db->query($sql_1, $class, $arg_1); echo '<pre>'; var_dump($result); echo '</pre><hr>'; echo 'Выборка данных пользователя по Имени<br>'; $result = $db->query($sql_2, $class, $arg_2); echo '<pre>'; var_dump($result); echo '</pre><hr>'; echo 'Выборка данных пользователей по Имени с использованием like<br>'; $result = $db->query($sql_3, $class, $arg_3);
require_once __DIR__ . '/../../index.php'; use App\Db; $db = new Db(); $table = App\Models\User::TABLE; $classUser = '******'; $sql = 'SELECT * FROM `' . $table . '` WHERE `name`=:name AND `email`=:email;'; $sql_2 = 'SELECT * FROM `' . $table . '` WHERE `name`=:name;'; $sql_3 = 'SELECT * FROM `' . $table . '`;'; $sql_4 = 'SELECT * FROM `' . $table . '` WHERE `name` like :name;'; $args = [':name' => 'Иванов Сергей', ':email' => '*****@*****.**']; $args_2 = [':name' => 'Иванов Сергей']; $args_3 = [':name' => '%Иванов %']; $args_4 = (include __DIR__ . './user_params.php'); echo 'Поиск пользователя по Имени и Email (есть ли такой)<br>'; $res = $db->execute($sql, $args); echo '<pre>'; var_dump($res); echo '</pre><hr>'; echo 'Выборка данных пользователя по Имени и Email<br>'; $result = $db->query($classUser, $sql, $args); echo '<pre>'; var_dump($result); echo '</pre><hr>'; echo 'Выборка данных пользователя по Имени<br>'; $result = $db->query($classUser, $sql_2, $args_2); echo '<pre>'; var_dump($result); echo '</pre><hr>'; echo 'Выборка данных по всем пользователям (параметры по умолчанию - пустой массив)<br>'; $result = $db->query($classUser, $sql_3);