OUJOOD.COM
La fonction real_query() ou mysqli_real_query() en PHP
PHP Version: 5+
La fonction real_query() ou mysqli_real_query() est utilisée pour exécuter une requête SQL unique sur une base de données MySQL. La fonction retourne true si l'exécution de la requête a réussi, ou false si une erreur s'est produite.
Définition et utilisation
La fonction real_query() est définie comme suit :
bool real_query(string $query, mysqli $connection);
Le premier paramètre, $query, est une chaîne contenant la requête SQL à exécuter. Le second paramètre, $connection, est une instance de la classe mysqli représentant la connexion à la base de données.
Syntaxes orientée objet et procédurale
La fonction real_query() est disponible dans les deux styles de programmation, orienté objet et procédural.
Syntaxe orientée objet
$connection = new mysqli("localhost", "root", "", "my_database");
// Exécuter une requête SQL
$result = $connection->real_query("SELECT * FROM users");
if ($result) {
// La requête a réussi
} else {
// Une erreur s'est produite
}
Syntaxe procédurale
$connection = mysqli_connect("localhost", "root", "", "my_database");
// Exécuter une requête SQL
$result = mysqli_real_query($connection, "SELECT * FROM users");
if ($result) {
// La requête a réussi
} else {
// Une erreur s'est produite
}
Valeurs possibles et paramètres
La fonction real_query() retourne true si l'exécution de la requête a réussi, ou false si une erreur s'est produite.
Le paramètre $query doit être une chaîne valide contenant une requête SQL. La requête peut être une instruction SELECT, INSERT, UPDATE ou DELETE.
Exemples Pratiques d'utilisation de la fonction real_query() en PHP
Syntaxe Orientée Objet
Sélectionner toutes les lignes de la table 'users'
Exemple : 📋 Copier le code
<?php
$query = "SELECT * FROM users";
$result = $connection->real_query($query);
if ($result) {
// La requête a réussi
// Parcourir les résultats
while ($row = mysqli_fetch_assoc($result)) {
echo $row['name'] . " " . $row['email'];
}
} else {
// Une erreur s'est produite
}
?>
Insérer un nouveau record dans la table 'users'
Exemple : 📋 Copier le code
<?php
$query = "INSERT INTO users (name, email) VALUES ('John Doe', 'johndoe@example.com')";
$result = $connection->real_query($query);
if ($result) {
// La requête a réussi
// Afficher le message de confirmation
echo "Le nouveau record a été créé avec succès.";
} else {
// Une erreur s'est produite
}
?>
Mettre à jour un record dans la table 'users'
Exemple : 📋 Copier le code
<?php
$query = "UPDATE users SET name = 'Jane Doe' WHERE email = 'janedoe@example.com'";
$result = $connection->real_query($query);
if ($result) {
// La requête a réussi
// Afficher le message de confirmation
echo "Le record a été mis à jour avec succès.";
} else {
// Une erreur s'est produite
}
?>
Supprimer un record de la table 'users'
Exemple : 📋 Copier le code
<?php
$query = "DELETE FROM users WHERE email = 'janedoe@example.com'";
$result = $connection->real_query($query);
if ($result) {
// La requête a réussi
// Afficher le message de confirmation
echo "Le record a été supprimé avec succès.";
} else {
// Une erreur s'est produite
}
?>
Syntaxe Procédurale
Sélectionner toutes les lignes de la table 'users'
Exemple : 📋 Copier le code
<?php
$query = "SELECT * FROM users";
$result = mysqli_real_query($connection, $query);
if ($result) {
// La requête a réussi
// Parcourir les résultats
while ($row = mysqli_fetch_assoc($result)) {
echo $row['name'] . " " . $row['email'];
}
} else {
// Une erreur s'est produite
}
?>
Insérer un nouveau record dans la table 'users'
Exemple : 📋 Copier le code
<?php
$query = "INSERT INTO users (name, email) VALUES ('John Doe', 'johndoe@example.com')";
$result = mysqli_real_query($connection, $query);
if ($result) {
// La requête a réussi
// Afficher le message de confirmation
echo "Le nouveau record a été créé avec succès.";
} else {
// Une erreur s'est produite
}
?>
Mettre à jour un record dans la table 'users'
Exemple : 📋 Copier le code
<?php
$query = "UPDATE users SET name = 'Jane Doe' WHERE email = 'janedoe@example.com'";
$result = mysqli_real_query($connection, $query);
if ($result) {
// La requête a réussi
// Afficher le message de confirmation
echo "Le record a été mis à jour avec succès.";
} else {
// Une erreur s'est produite
}
?>
Supprimer un record de la table 'users'
Exemple : 📋 Copier le code
<?php
$query = "DELETE FROM users WHERE email = 'janedoe@example.com'";
$result = mysqli_real_query($connection, $query);
if ($result) {
// La requête a réussi
// Afficher le message de confirmation
echo "Le record a été supprimé avec succès.";
} else {
// Une erreur s'est produite
}
?>
Astuces et conseils d'utilisation pratique
- Pour éviter les attaques par injection SQL, utilisez des requêtes préparées.
- Vérifiez toujours le retour de la fonction real_query().