Insérer une chaîne avec un guillemet simple ('
) ou guillemet("
) dans mysql
Utilisez simplement addslashes();
dans Insertion et stripslashes();
pour récupérer des données.
$str = "Hello Friend's.. Hows you all"s.";
// Outputs: Hello Friend\'s..Hows you all\"s.
echo addslashes($str);
stripslashes — Chaîne sans guillemets entre guillemets avec addslashes()
. Renvoie une chaîne sans barres obliques inverses. (\'
devient '
et ainsi de suite.) Doubles barres obliques inverses (\\
) sont transformés en une seule barre oblique inverse (\
).
$str = "Hello Friend\'s.. Hows you all"s."; // Outputs: Hello Friend's.. Hows you all"s.
echo stripslashes($str);
Nous arrivons maintenant au point. Si nous insérons une chaîne dans la base de données avec des guillemets simples ou doubles comme ceci :
$str = “Hello Friend's.. Hows you all"s.”;
$query = “INSERT INTO tbl (description) VALUES (‘$str’)”;
Cela se produira une erreur, mais si nous utilisons addslashes($str)
fonction comme ci-dessous, puis insérez dans la base de données, aucune erreur ne se produira.
$str = “Hello Friend's.. Hows you all"s.”;
$desc_str = addslashes($str);
$query = “INSERT INTO tbl (description) VALUES (‘$desc_str’)”;
de même nous pouvons utiliser stripslashes($str)
pour imprimer cette valeur de champ de table comme ceci :
echo stripslashes($str);