2 registres actualitzats correctament
Codi en PHP
<!DOCTYPE html>
<html lang="ca">
<head>
<title>Exemple Propi Actualitzacio Dades Guillem Serrat</title>
<meta http-equiv="Content-type" content="text/html; charset=UTF-8">
</head>
<body>
<?php
$servidor = "127.0.0.1";
$usuari = "root";
$contrasenya = "fjeclot";
$nomDB = "dbGserrat";
$nomTaula = "Clients";
try {
// Definim un nou objecte de la classe PDO amb els atributs: host al que ens connectarem, el nom d'usuari i contrasenya.
$connexio = new PDO("mysql:host=$servidor;dbname=$nomDB", $usuari, $contrasenya);
// A través de la funció setAttribute, agafem el tipus d'error en cas de que n'hi hagi algun
$connexio->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// Definim una variable que és l'ordre que s'executara, actualitzar el lastname del registre amb ID = 2. La BBDD en la qual es treballarà està especificat a la connexió
$instruccioSQL = "UPDATE $nomTaula SET mail='linuxTheBest@binefa.com' WHERE cognom='Binefa'";
// Definim una preparació, en aquest cas, amb valors fixos (la variable $instruccioSQL que ja té definida l'ordre)
$declaracioPreparada = $connexio->prepare($instruccioSQL);
// Executem la preparació (l'ordre de la variable $instruccioSQL)
$declaracioPreparada->execute();
// Funció rowCount() retorna el nombre de files afectades per l'operació. Per tant, es comptaran les files afectades per la preparació ($declaracioPreparada), que és l'UPDATE d'una fila.
// En cas de que es faci l'UPDATE, rowCount() valdrà 1, en cas que no es faci (ja que ja té aquell valor), valdrà 0.
echo $declaracioPreparada->rowCount() . " registres actualitzats correctament";
} catch(PDOException $e) { // En cas de que hi hagi un error, PHP llença una PDOException, i la variable $e agafa aquesta excepció
echo "Alguna fila no s'ha actualitzat correctament" . "<br>" . $e->getMessage(); // Si no es crea correctament, imprimeix el missatge d'error de PDOException
}
$connexio = null; // Tanca la connexió amb la BBDD
?>
<h1>Codi en PHP</h1>
<?php
show_source("ex11Propi.php");
?>
</body>
</html>