Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- ini_set('display_errors', 1);
- // ПОДКЛЮЧЕНИЕ К БД
- $host = 'localhost';
- $db = 'test';
- $user = 'root';
- $pass = 'root';
- $charset = 'utf8';
- $dsn = "mysql:host=$host;dbname=$db;charset=$charset";
- $opt = [
- PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
- PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC
- ];
- $pdo = new PDO($dsn, $user, $pass, $opt); // PDO стандартный класс PHP
- // SELECT 1
- // $stmt = $pdo->query('SELECT login FROM users'); // query использовать только для работы без переменных php
- // while ($row = $stmt->fetch()) { // получаем каждую строку из запроса
- // echo $row['login']."<br>";
- // }
- // SELECT 2
- // $stmt = $pdo->prepare('SELECT login FROM users WHERE id > :id'); // подготовка
- // $stmt->execute(array('id' => 0)); // подставляем значение в :id
- // foreach ($stmt as $row) {
- // echo $row['login']."<br>";
- // }
- // UPDATE 1
- // $stmt = $pdo->query('UPDATE users SET bonus = 0');
- // UPDATE 2
- // $data = array(
- // 1 => 3,
- // 2 => 5,
- // );
- // $stmt = $pdo->prepare('UPDATE users SET bonus = bonus + ? WHERE id = ?');
- // foreach ($data as $id => $bonus) {
- // $stmt->execute([$bonus, $id]);
- // }
- // SELECT 3 - для одного поля из одной строки
- // $stmt = $pdo->query('SELECT login FROM users WHERE id = 1');
- // $login = $stmt->fetchColumn();
- // echo $login;
- // SELECT 4 - вывести массив вида [0=>value1,1=>value2]
- // $data = $pdo->query('SELECT login FROM users')->fetchAll(PDO::FETCH_COLUMN);
- // var_dump($data);
- // SELECT 5 - вывести массив вида [id1=>value1,id2=>value2]
- // $data = $pdo->query('SELECT id, login FROM users')->fetchAll(PDO::FETCH_KEY_PAIR);
- // var_dump($data);
- // SELECT 6 - вывести массив вида [id1=>[option1=>value1,option2=>value2], id2=>[option1=>value1,option2=>value2]]
- // $data = $pdo->query('SELECT id, login, password FROM users')->fetchAll(PDO::FETCH_UNIQUE);
- // var_dump($data);
- // РЕШЕНИЕ ПРОБЛЕМЫ С LIKE
- // $login = "%user%";
- // $stmt = $pdo->prepare('SELECT * FROM users WHERE login LIKE ?');
- // $stmt->execute(array($login));
- // $data = $stmt->fetchAll();
- // var_dump($data);
- // РЕШЕНИЕ ПРОБЛЕМЫ С LIMIT
- // $limit_from = 1; // начальная позиция
- // $per_page = 2; // сколько взять
- // $stmt = $pdo->prepare('SELECT * FROM users LIMIT ?, ?');
- // $stmt->bindValue(1, $limit_from, PDO::PARAM_INT);
- // $stmt->bindValue(2, $per_page, PDO::PARAM_INT);
- // $stmt->execute();
- // $data = $stmt->fetchAll();
- // var_dump($data);
- // РЕШЕНИЕ ПРОБЛЕМЫ С IN (когда не знаешь сколько нужно поставить знаков ?)
- // $arr = array(1,2,3);
- // $in = str_repeat('?,', count($arr)-1).'?'; // "?,?,?"
- // $sql = "SELECT * FROM table WHERE column IN ($in)";
- // $stmt = $db->prepare($sql);
- // $stmt->execute($arr);
- // $data = $stmt->fetchAll();
- // var_dump($data);
- // ИСПОЛЬЗОВАТЬ ДЛЯ DELETE, КОГДА НЕ НУЖНО НИЧЕГО ВОЗВРАЩАТЬ
- // $pdo->exec(string $statement); // вместо prepare
- // ГЕНЕРАЦИЯ ССЫЛОК С ОПРЕДЕЛЕННЫМИ ПАРАМЕТРАМИ
- $data = $stmt->fetchAll();
- foreach ($data as $key => $value) {
- ?>
- <a href="/edit.php?id=<?=$user['id']?>">Редактировать</a>
- <?php
- }
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement