|
@@ -35,3 +35,28 @@ try {
|
|
die();
|
|
die();
|
|
}
|
|
}
|
|
```
|
|
```
|
|
|
|
+http://pdo.asmer.php1.a-level.com.ua/init.php
|
|
|
|
+
|
|
|
|
+Выше в коде показан один из способов выполнения запросов: использование метода `query` объекта класса PDO (`$dbh`, *database handler*)
|
|
|
|
+с текстом запроса. `query` возвращает объект класса `PDOStatement`, который можно итерировать.
|
|
|
|
+
|
|
|
|
+Существует так же более безопасный и в определенных случаях более быстрый двухэтапный способ:
|
|
|
|
+
|
|
|
|
+```php
|
|
|
|
+<?php
|
|
|
|
+try {
|
|
|
|
+ $dbh = new PDO('mysql:host=localhost;dbname=test2', "test2", "TeSt2");
|
|
|
|
+ $sth = $dbh->prepare('INSERT INTO person SET name = :name, surname = :surname, father_name = :father_name');
|
|
|
|
+ $sth->execute(array( ":name" => "Donald", ":surname" => "Trump", ":father_name" => "Moishovich"));
|
|
|
|
+ foreach($dbh->query("SELECT * FROM person") as $row) {
|
|
|
|
+ print_r($row);
|
|
|
|
+ }
|
|
|
|
+ $dbh = null;
|
|
|
|
+} catch (PDOException $e) {
|
|
|
|
+ print "Error!: " . $e->getMessage() . "<br/>";
|
|
|
|
+ die();
|
|
|
|
+}
|
|
|
|
+```
|
|
|
|
+
|
|
|
|
+http://pdo.asmer.php1.a-level.com.ua/prepare.php
|
|
|
|
+
|