PHP MYSQL PDO - kompendium

Z Podręcznik Administratora by OPZ SGU
Przejdź do nawigacji Przejdź do wyszukiwania
Wersja do druku nie jest już wspierana i może powodować błędy w wyświetlaniu. Zaktualizuj swoje zakładki i zamiast funkcji strony do druku użyj domyślnej funkcji drukowania w swojej przeglądarce.

Połączenie z bazą oraz ustawienie kodowania znaków na UTF-8

<?php
/*** mysql hostname ***/
$hostname = 'localhost';

/*** mysql username ***/
$username = 'login';

/*** mysql password ***/
$password = 'haslo';

//baza danych
$database='nazwabazydanych';

try {
    $dbh = new PDO("mysql:host=$hostname;dbname=$database", $username, $password);
    /*** echo a message saying we have connected ***/
    //echo 'Connected to database';
    }
catch(PDOException $e)
    {
    exit ($e->getMessage());
    }
$sql_set_utf = "SET CHARSET utf8";
$dbh->query($sql_set_utf);


mb_internal_encoding( 'UTF-8' );
?>


Bezpieczny INSERT czyli bindowanie

$b=$dbh->prepare("INSERT INTO users (`username`,`password`,`email`,`key`) VALUES (:username,:password,:email,:key)");
$b->bindValue(":username",$username);
$b->bindValue(":password",$password);
$b->bindValue(":email",$email);
$b->bindValue(":key",$password);
$b->execute();  


Bezpieczny UPDATE czyli bindowanie

$d=$dbh->prepare("UPDATE  nazwatabeli SET  `pole1` =  :pole1, `pole2` = :pole2");
$d->bindValue(":pole1",$pole1);
$d->bindValue(":pole2",$pole2);
$d->execute(); 


Bezpieczne KASOWANIE (DELETE) czyli bindowanie

$b=$dbh->prepare("DELETE FROM tokens WHERE tokenid=:tokenid");
$b->bindValue(":tokenid",(int)$tokenid);
$b->execute();