Różne mechanizmy dostępu do bazy

1. Mechanizm mysql

Obecnie nie istnieje!!!!

<?php
// ustawienie zmiennych
$user="root";
$password="???";
$database="books";
$host="localhost";
// polaczenie z serwerem bazy danych
mysql_connect($host,$user,$password);
// wybor bazy danych
@mysql_select_db($database) or die( "Unable to select database");
// @ - powoduje wylaczenie kontroli bledów -
// dzieki temu mozemy wyswietlic tylko swój komunikat (die)
$query="select * from book"; // zapytanie
$res=mysql_query($query); // wykonanie zapytania
print mysql_error();
while ($row=mysql_fetch_array($res)) {
print_r($row); print '<br /><br />';
}
mysql_close(); // zamkniecie polaczenia
?>

2. Mechanizm mysqli - funkcyjnie

<?php
$user="root";
$password="???";
$database="books";
$host="localhost";
$db=mysqli_connect($host,$user,$password,$database);// polaczenie z serwerem bazy danych
$q="select * from book";
$res=mysqli_query($db,$q); // zapytanie
while ($row=mysqli_fetch_array($res)) {
print_r($row); print '<br /><br />';
}
mysqli_close($db); // zamkniecie polaczenia
?>

3. Mechanizm mysqli – obiektowo

<?php
$user="root";
$password="???";
$database="books";
$host="localhost";
$db = new mysqli($host,$user,$password,$database);
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
$query="SELECT * FROM book";
$res=$db->query($query); // zapytanie
while ($row=mysqli_fetch_array($res)) {
print_r($row);print '<br /><br />';
}
$db->close();
?>

Mechanizm obiektowo z użyciem pętli foreach i funckji printf

<?php
$user="root";
$password="???";
$database="books";
$host="localhost";
$db = new mysqli($host,$user,$password,$database);
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
$query="SELECT * FROM book";
foreach ( $db->query($query) as $row ) {
printf("%s %s \n
<br>Title: %s \n
<br><hr><br>",
$row['title']);
}
$db->close();
?>

4. PDO

$dbname='books';
$dbuser="root";
$dbpass="????";
try {
  $db = new PDO("mysql:host=localhost;dbname=books", $dbuser, $dbpass);
} catch(PDOException $e) {
  echo $e->getMessage();
  die(); // kończymy aplikacje
}
$q_insert='insert into book(title, authors) values ("Świtezianka", "Adam Mickiewicz")';
$q_select='select * from book';
$q_delete='delete from book';
try {
  foreach($db->query($q_select) as $row) {
    print_r($row);
  }
} catch (PDOException $e) {
  print "Error!: " . $e->getMessage() . "<br/>";
}
try {
  $db->exec($q_create);
  $result = $db->query($q_insert);
  $result = $db->query($q_select);
  foreach ($result->fetchAll() as $row) {
    print_r($row);
  }
  // $result = $db->exec($q_delete);
} catch (Exceprion $e) {
  echo $e->getMessage();
}
// preparowane
$q = $db->prepare("select * from book where authors=:autor ");
$autor='Adam Mickiewicz';
$q->bindParam(':autor',$autor); //drugi parametr musi byc zmienną!
$q->execute();
foreach ($q->fetchAll() as $row) {
  print_r($row);
}