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(); ?>