PHP - Jobba med databaser

Webbutveckling / PHP

Läs från MySQL-databas (PDO)

Spar exempelkoden nedan i en fil med filändelsen .php

Exempelkod:

Metod 1 - Hämta en hel resultattabell med fetchAll():

<?php
// connect
$host = "127.0.0.1";
$user = "db_username";
$password = "password for db_username"; 
$database = "db_name";
$pdo = new PDO("mysql:host=$host;dbname=$database", $user, $password); 

echo "Connected to database";

$stmt = $pdo->prepare("SELECT * FROM users");
$stmt->execute();

$data = $stmt->fetchAll();

foreach($data as $row){
echo $row["FirstName"]."<br>";
}

// Close the connection
$pdo = null; 
?>

Metod 2 - Hämta resultattabell baserad på värde med bindValue() och fetch():

<?php
// connect
$host = "127.0.0.1";
$user = "db_username";
$password = "password for db_username"; 
$database = "db_name";
$pdo = new PDO("mysql:host=$host;dbname=$database", $user, $password); 

echo "Connected to database";

$lastname = $_POST["lastname"];

$stmt = $pdo->prepare("SELECT * FROM users WHERE LastName = ?");
$stmt->bindValue(1, $lastname);
$stmt->execute();

while($row = $stmt->fetch(PDO::FETCH_ASSOC)){
//print_r($row);
echo $row["FirstName"]."<br>";
}

// Close the connection
$pdo = null; 
?>

Metod 3 - Hämta resultattabell baserad på värde med quote() och fetch():

<?php
// connect
$host = "127.0.0.1";
$user = "username";
$password = "password";
$database = "test1";
$pdo = new PDO("mysql:host=$host;dbname=$database", $user, $password); 

echo "Connected to database";

$input = $_POST["lastname"];
$lastname = $pdo->quote($input);

$stmt = $pdo->prepare("SELECT * FROM users WHERE LastName = $lastname");
$stmt->execute();

while($row = $stmt->fetch(PDO::FETCH_ASSOC)){
//print_r($row);
echo $row["FirstName"]."<br>";
}

// Close the connection
$pdo = null; 
?>

Metod 4 - Hämta resultattabell baserad på värde med bindParam() och fetch():

<?php
// connect
$host = "127.0.0.1";
$user = "username";
$password = "password";
$database = "test1";
$pdo = new PDO("mysql:host=$host;dbname=$database", $user, $password); 

echo "Connected to database";

$lastname = $_POST["lastname"];

$stmt = $pdo->prepare("SELECT * FROM users WHERE LastName = ?");
$stmt->bindParam(1, $lastname);
$stmt->execute();

while($row = $stmt->fetch(PDO::FETCH_ASSOC)){
//print_r($row);
echo $row["FirstName"]."<br>";
}

// Close the connection
$pdo = null; 
?>