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);
}