PHP MySQL Clauza WHERE. Selectați date cu PDO (+declarații pregătite). Exemplu (PDO).
Partajeaza in Google Classroom
Memorator: Descriere video Descarcă PDF
Selectați date cu PDO (+ declarații pregătite/prepared statements)
Următorul exemplu folosește instrucțiuni pregătite (prepared statements).
Selectează coloanele id, prenumele și numele (id, firstname, lastname) din tabelul MyGuests unde numele de familie este "Popescu" și îl afișează într-un tabel HTML:
Exemplu (PDO)
<?php
echo "<table style='border: solid 1px black;'>";
echo "<tr><th>Id</th><th>Prenume</th><th>Nume</th></tr>";
class TableRows extends RecursiveIteratorIterator {
function __construct($it) {
parent::__construct($it, self::LEAVES_ONLY);
}
function current() {
return "<td style='width:150px;border:1px solid black;'>" . parent::current(). "</td>";
}
function beginChildren() {
echo "<tr>";
}
function endChildren() {
echo "</tr>" . "\n";
}
}
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDBPDO";
try {
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $conn->prepare("SELECT id, firstname, lastname FROM MyGuests WHERE lastname='Popescu'");
$stmt->execute();
// setați tabloul rezultat la asociativ (set the resulting array to associative)
$result = $stmt->setFetchMode(PDO::FETCH_ASSOC);
foreach(new TableRows(new RecursiveArrayIterator($stmt->fetchAll())) as $k=>$v) {
echo $v;
}
}
catch(PDOException $e) {
echo "Eroare: " . $e->getMessage();
}
$conn = null;
echo "</table>";
?>