Formulaire PHP (les apostrophes)
Fermé
dragonfire59
Messages postés
167
Date d'inscription
samedi 1 mars 2008
Statut
Membre
Dernière intervention
6 novembre 2016
-
13 juin 2012 à 12:47
Utilisateur anonyme - 13 juin 2012 à 15:15
Utilisateur anonyme - 13 juin 2012 à 15:15
A voir également:
- Formulaire PHP (les apostrophes)
- Easy php - Télécharger - Divers Web & Internet
- Formulaire de réclamation facebook - Guide
- Récupérer compte hotmail sans formulaire ✓ - Forum Hotmail / Outlook.com
- Php natif - Forum PHP
- Formulaire remboursement frais de résiliation free pdf ✓ - Forum Vos droits sur internet
4 réponses
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
Modifié par Alain_42 le 13/06/2012 à 13:46
Modifié par Alain_42 le 13/06/2012 à 13:46
avant de rentrer les valeurs dans la bdd, passes par la fonction mysql_real_escape_string
ex: $adresse=mysql_real_escape_string($_POST['adresse']);
ça échappe les ' entre autre
par contre après pour afficher il faut appliquer stripslashes($adresse)
ex: $adresse=mysql_real_escape_string($_POST['adresse']);
ça échappe les ' entre autre
par contre après pour afficher il faut appliquer stripslashes($adresse)
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
13 juin 2012 à 14:07
13 juin 2012 à 14:07
décidément le père tu y tiens:
mysql_real_escape_string() protège une commande SQL de la chaîne unescaped_string, en "échappant" les caractères spéciaux tout en prenant en compte le jeu de caractères courant de la connexion link_identifier. Le résultat peut être utilisé sans problème avec la fonction mysql_query(). Si des données binaires doivent être insérées, cette fonction doit être utilisée.
mysql_real_escape_string() appelle la fonction mysql_escape_string() de la bibliothèque MySQL qui ajoute un anti-slash aux caractères suivants : NULL, \x00, \n, \r, \, ', " et \x1a.
donc si la valeur avant est l'alabama la fct transforme en l\'alabama
mysql_real_escape_string() protège une commande SQL de la chaîne unescaped_string, en "échappant" les caractères spéciaux tout en prenant en compte le jeu de caractères courant de la connexion link_identifier. Le résultat peut être utilisé sans problème avec la fonction mysql_query(). Si des données binaires doivent être insérées, cette fonction doit être utilisée.
mysql_real_escape_string() appelle la fonction mysql_escape_string() de la bibliothèque MySQL qui ajoute un anti-slash aux caractères suivants : NULL, \x00, \n, \r, \, ', " et \x1a.
donc si la valeur avant est l'alabama la fct transforme en l\'alabama
Kafiristanica
Messages postés
263
Date d'inscription
mardi 12 juin 2012
Statut
Membre
Dernière intervention
27 août 2012
28
13 juin 2012 à 14:09
13 juin 2012 à 14:09
un exemple de la requete que tu essaye ?
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
13 juin 2012 à 14:31
13 juin 2012 à 14:31
mea culpa
je viens de faire un petit script de test, effectivement bien que la lecture du descriptif de cette fonction ne le précise pas
ce qui est effectivement enregistré dans la BDD est sans \
donc cela depend de magic_cote_gpc
milles excuses !!
je viens de faire un petit script de test, effectivement bien que la lecture du descriptif de cette fonction ne le précise pas
ce qui est effectivement enregistré dans la BDD est sans \
donc cela depend de magic_cote_gpc
milles excuses !!
Pas de problème ^^
Note qu'il est normal que ces backslashes ne se retrouvent pas enregistrés dans la base, il n'ont rien à y faire. Comme tous les caractères d'échappement, il servent juste à éviter que les caractères spéciaux jouent leur fonctions spéciales. Mais ils ne font pas partie des données.
Note qu'il est normal que ces backslashes ne se retrouvent pas enregistrés dans la base, il n'ont rien à y faire. Comme tous les caractères d'échappement, il servent juste à éviter que les caractères spéciaux jouent leur fonctions spéciales. Mais ils ne font pas partie des données.
13 juin 2012 à 13:51
par contre après pour afficher il faut appliquer stripslashes($adresse)
Absolument pas. Si tu as besoin de le faire, c'est que tu avais déjà des slashes en trop avant d'insérer tes données dans la base, ça ne vient pas de mysql_real_escape_string