PHP mysqli real_escape_string()
La fonction real_escape_string() / mysqli_real_escape_string() est une fonction intégrée en PHP qui échappe les caractères spéciaux dans une chaîne pour une utilisation dans une requête SQL, en tenant compte du jeu de caractères actuel de la connexion.
Syntaxe
Style procédural:
mysqli_real_escape_string(conn, str)
Style orienté objet:
$mysqli->real_escape_string(str)
Paramètres
- conn(Obligatoire) : Spécifie la connexion MySQL à utiliser.
- str(Obligatoire) : La chaîne à échapper.
Valeur de retour
La fonction renvoie la chaîne échappée.
Version PHP:
5+
Exemple – Style procédural:
<?php
$conn = mysqli_connect("localhost", "root", "password", "db_name");
// Vérifier la connexion
if (mysqli_connect_errno()) {
echo "Impossible de se connecter à MySQL: " . mysqli_connect_error();
exit();
}
// Échapper les caractères spéciaux, le cas échéant
$name = mysqli_real_escape_string($conn, $_POST['name']);
$age = mysqli_real_escape_string($conn, $_POST['age']);
$sql="INSERT INTO Users (name, age) VALUES ('$name', '$age')";
$res = mysqli_query($conn, $sql);
// Fermer la connexion
mysqli_close($conn);
?>
Exemple – Style orienté objet:
<?php
$mysqli = new mysqli("localhost", "root", "password", "db_name");
// Vérifier la connexion
if ($mysqli->connect_errno) {
echo "Impossible de se connecter à MySQL: " . $mysqli->connect_error;
exit();
}
// Échapper les caractères spéciaux, le cas échéant
$name = $mysqli->real_escape_string($_POST['name']);
$age = $mysqli->real_escape_string($_POST['age']);
$sql="INSERT INTO Users (name, age) VALUES ('$name', '$age')";
$res = $mysqli->query($sql);
// Fermer la connexion
$mysqli->close();
?>





