The exact characters that are escaped by this function are the null byte (0), newline (\n), carriage return (\r), backslash (\), single quote ('), double quote (") and substiture (SUB, or \032).
mysql_escape_string
(PHP 4 >= 4.0.3, PHP 5)
mysql_escape_string — Protège les caractères spéciaux SQL
Description
mysql_escape_string() va protéger tous les caractères de la chaîne unescaped_string, pour pouvoir l'utiliser directement dans une requête mysql_query(). Cette fonction est obsolète.
mysql_escape_string() est identique à la fonction mysql_real_escape_string() hormis le fait que mysql_real_escape_string() requiert une ressource de connexion et protège la chaîne en fonction du jeu de caractères courant. mysql_escape_string() ne demande pas de connexion comme argument, et ne respecte pas le jeu de caractères courant.
Cette fonction est OBSOLETE depuis PHP 5.3.0. Nous vous encourageons vivement à ne plus l'utiliser.
Liste de paramètres
- unescaped_string
-
La chaîne qui doit être protégée.
Valeurs de retour
Retourne la chaîne protégée.
Historique
| Version | Description |
|---|---|
| 5.3.0 | Cette fonction lance maintenant une alerte de type E_DEPRECATED. |
| 4.3.0 | Cette fonction devient obsolète, ne l'utilisez pas. À la place, utilisez la fonction mysql_real_escape_string(). |
Exemples
Exemple #1 Exemple avec mysql_escape_string()
<?php
$item = "C'est un exemple de Zak";
$escaped_item = mysql_escape_string($item);
printf("Chaîne protégée : %s\n", $escaped_item);
?>
L'exemple ci-dessus va afficher :
Chaîne protégée : C\'est un exemple de Zak
Notes
Note:
mysql_escape_string() ne protège pas les caractères % et _.
Voir aussi
- mysql_real_escape_string() - Protège les caractères spéciaux d'une commande SQL
- addslashes() - Ajoute des antislashs dans une chaîne
- La directive magic_quotes_gpc.
it seems the function changes the character encoding of the string.
I get utf-8 encoded string and my mysql database is set to utf-8 as well.
If i just write the data to the database it works perfectly fine, if i use this function, it changes the encoding and therefore stores the wrong characters.
Seems like a bug to me.
