English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Dans ce tutoriel, vous apprendrez à utiliser PHP pour mettre à jour les enregistrements dans une table MySQL.
UPDATELa phrase est utilisée pour modifier ou modifier les enregistrements existants dans une table de base de données. Cette phrase est généralement utilisée avec la clause WHERE pour appliquer les modifications uniquement aux enregistrements correspondant à des conditions spécifiques.
La syntaxe de base de l'instruction UPDATE peut être donnée de la manière suivante :
UPDATE table_name SET column1=value, column2=value2,... WHERE column_name=some_value
Utilisons une requête SQL avec une clause WHERE pour effectuer une requête SQL, puis exécutons cette requête en la passant à la fonction PHP mysqli_query(). Considérons la table persons suivante dans la base de données de démonstration :
+----+------------+-----------+----------------------+ | id | first_name | last_name | email | +----+------------+-----------+----------------------+ | 1 | Peter | Parker | [email protected] | | 2 | John | Rambo | [email protected] | | 3 | Clark | Kent | [email protected] | | 4 | John | Carter | [email protected] | | 5 | Harry | Potter | [email protected] | +----+------------+-----------+----------------------+
Le code PHP suivant dans l'exemple va mettre à jour la table persons où l'id est égal à1l'adresse e-mail de cette personne.
<?php /*Essayer de se connecter au serveur MySQL. Supposons que vous exécutez MySQL. Serveur avec les paramètres par défaut (utilisateur sans mot de passe "root") */ $link = mysqli_connect("localhost", "root", "", "demo"); //Vérifier la connexion if($link === false) { die("Erreur : Impossible de se connecter. ". mysqli_connect_error()); } //Essayer de mettre à jour l'exécution de la requête $sql = "UPDATE persons SET email='[email protected]' WHERE id=1"; if(mysqli_query($link, $sql)){ echo "Enregistrement mis à jour avec succès."; } else { echo "Erreur : Impossible d'exécuter $sql ". mysqli_error($link); } //Fermez la connexion mysqli_close($link); ?>
<?php /*Essayer de se connecter au serveur MySQL. Supposons que vous exécutez MySQL. Serveur avec les paramètres par défaut (utilisateur sans mot de passe "root") */ $mysqli = new mysqli("localhost", "root", "", "demo"); //Vérifier la connexion if($mysqli === false) { die("Erreur : Impossible de se connecter. ". $mysqli-connect_error); } //Essayer de mettre à jour l'exécution de la requête $sql = "UPDATE persons SET email='[email protected]' WHERE id=1"; if($mysqli-query($sql) === true) { echo "Enregistrement mis à jour avec succès."; } else{}} echo "Erreur : Impossible d'exécuter $sql. \->error; } //Fermez la connexion $mysqli->close(); ?>
<?php /*Essayer de se connecter au serveur MySQL. Supposons que vous exécutez MySQL. Serveur avec les paramètres par défaut (utilisateur sans mot de passe "root") */ try{ $pdo = new PDO("mysql:host=localhost;dbname=demo", "root", \ //Définir le mode d'erreur PDO sur les exceptions $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch(PDOException $e){ die("Erreur : Impossible de se connecter. \->getMessage()); } //Essayer de mettre à jour l'exécution de la requête try{ $sql = "UPDATE persons SET email='[email protected]' WHERE id=1"; $pdo->exec($sql); echo "Enregistrement mis à jour avec succès."; } catch(PDOException $e){ die("Erreur : Impossible d'exécuter $sql. \->getMessage()); } //Fermez la connexion unset($pdo); ?>
Après la mise à jour, la table persons sera affichée comme suit :
+----+------------+-----------+--------------------------+ | id | first_name | last_name | email | +----+------------+-----------+--------------------------+ | 1 | Peter | Parker | [email protected] | | 2 | John | Rambo | [email protected] | | 3 | Clark | Kent | [email protected] | | 4 | John | Carter | [email protected] | | 5 | Harry | Potter | [email protected] | +----+------------+-----------+--------------------------+
Avertissement :La clause WHERE de l'instruction UPDATE spécifie quels enregistrements doivent être mis à jour. Si la clause WHERE est omise, tous les enregistrements seront mis à jour.