Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & MySQL
PHP & MySQL Forum d'entraide sur les fonctions MySQL avec PHP. Avant de poster -> FAQ MySQL, Cours MySQL et Sources MySQL. Pour les questions concernant le moteur MySQL plutôt que les fonctions PHP, merci d'utiliser le forum MySQL.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 31/05/2011, 11h54   #1
Invité de passage
 
Femme
Webmaster
Inscription : mai 2011
Messages : 12
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : Webmaster
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : mai 2011
Messages : 12
Points : 1
Points : 1
Par défaut apostrophe mysql & php

Bonjour,
J'ai créer un formulaire sur mon site internet, les données sont envoyées ensuite sur ma base de données Mysql. Le soucis c'est que je n'arrive pas à envoyer ce formulaire dès qu'il y a le moindre apostrophe. (Sauf si je le double '').
Que dois-je faire/modifier ? et où ?
Merci
soft_57 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/05/2011, 12h04   #2
Membre expérimenté
 
Homme
Inscription : juillet 2007
Messages : 437
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Secteur : Santé

Informations forums :
Inscription : juillet 2007
Messages : 437
Points : 558
Points : 558
Salut,

Hélas, le contrôle de données utilisateur est une plaie pour les développeurs ... Et c'est à toi de le faire !

Rien à voir avec le PHP, mais pour ma part, je me suis fais une classe d'accès SQL pour mes applications avec dedans une méthode "FormatData", me renvoyant mes données correctement formatées.

Donc tu peux tenter de te faire une fonction telle ...
Luc1an0 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/05/2011, 14h40   #3
Invité de passage
 
Femme
Webmaster
Inscription : mai 2011
Messages : 12
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : Webmaster
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : mai 2011
Messages : 12
Points : 1
Points : 1
Merci pour la réponse. Mais n'y a t-il pas une autre solution ? =S
J'avais déjà regarder sur des forums et j'ai vu qu'il y aurait une fonction mais je n'arrive pas à l'appliquer.
soft_57 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/05/2011, 15h24   #4
Invité de passage
 
Femme
Webmaster
Inscription : mai 2011
Messages : 12
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : Webmaster
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : mai 2011
Messages : 12
Points : 1
Points : 1
la fonction addslashes() je crois
soft_57 est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 02/06/2011, 00h31   #5
Membre Expert
 
Avatar de Atomya Rise
 
Femme Emilie Lefol
En recherche d'emploi
Inscription : février 2009
Messages : 411
Détails du profil
Informations personnelles :
Nom : Femme Emilie Lefol
Âge : 26
Localisation : France, Somme (Picardie)

Informations professionnelles :
Activité : En recherche d'emploi
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : février 2009
Messages : 411
Points : 1 277
Points : 1 277
Citation:
Envoyé par soft_57 Voir le message
la fonction addslashes() je crois
addslashes

utilise plutôt la fonction : mysql_real_escape_string
__________________

Si un message vous a aidé, pensez à voter positivement pour lui ! Merci
Pas de question technique en privé
- Si on criait sur la place publique les fautes de tout le monde, on ne pourrait plus fréquenter personne ! (Marcel Pagnol)
- Technocrates, c’est les mecs que, quand tu leur poses une question, une fois qu’ils ont fini de répondre, tu comprends plus la question que t’as posée. (Coluche)
Atomya Rise est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/06/2011, 12h26   #6
Membre chevronné
 
Homme Taoufiq Ben
Développeur Web
Inscription : mai 2009
Messages : 460
Détails du profil
Informations personnelles :
Nom : Homme Taoufiq Ben
Âge : 25
Localisation : Maroc

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mai 2009
Messages : 460
Points : 644
Points : 644
addslashes dans l'insertion et stripslashes pour le retour.
m4riachi est déconnecté   Envoyer un message privé Réponse avec citation 02
Vieux 02/06/2011, 18h54   #7
Membre Expert
 
Inscription : septembre 2010
Messages : 1 242
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 1 242
Points : 1 564
Points : 1 564
Pour un code "universel" quelque soit la configuration du serveur :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
function Verif_magicquotes ($chaine)
{
if (get_magic_quotes_gpc()) $chaine = stripslashes($chaine);
 
return $chaine;
} 
 
$nom = isset($_POST['nom']) && trim($_POST['nom']) != '' ? Verif_magicquotes($_POST['nom']) : null;
 
//...
 
if (isset($nom))
{
$query = "INSERT ... VALUES('".mysql_real_escape_string($nom)."',...);"
}
__________________
- Réalisations
- Interface graphique : génération en javascript d'objets défilants, texte et/ou images, mode horizontal ou vertical.
ABCIWEB est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/06/2011, 19h45   #8
Membre Expert
 
Avatar de Atomya Rise
 
Femme Emilie Lefol
En recherche d'emploi
Inscription : février 2009
Messages : 411
Détails du profil
Informations personnelles :
Nom : Femme Emilie Lefol
Âge : 26
Localisation : France, Somme (Picardie)

Informations professionnelles :
Activité : En recherche d'emploi
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : février 2009
Messages : 411
Points : 1 277
Points : 1 277
j'avoue que la réponse de ABCIWEB est bien plus "universel", mais pas terrible les magic_quotes, à exclure tant que possible...
__________________

Si un message vous a aidé, pensez à voter positivement pour lui ! Merci
Pas de question technique en privé
- Si on criait sur la place publique les fautes de tout le monde, on ne pourrait plus fréquenter personne ! (Marcel Pagnol)
- Technocrates, c’est les mecs que, quand tu leur poses une question, une fois qu’ils ont fini de répondre, tu comprends plus la question que t’as posée. (Coluche)
Atomya Rise est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/06/2011, 23h38   #9
Membre Expert
 
Inscription : septembre 2010
Messages : 1 242
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 1 242
Points : 1 564
Points : 1 564
Citation:
Envoyé par Atomya Rise Voir le message
j'avoue que la réponse de ABCIWEB est bien plus "universel", mais pas terrible les magic_quotes, à exclure tant que possible...
Ben oui mais on choisi pas toujours, surtout sur un mutualisé.

Et même si ça fait longtemps - depuis php5 il me semble - que cette fonction n'est plus activée par défaut, elle est encore néanmoins souvent activée pour compatibilité avec d'anciens scripts chez pas mal d'hébergeurs (sans compter free parmi les fournisseurs d'accès).

Il y a aussi la possibilité de désactiver ça dans un .htaccess, mais pas toujours (suivant les hébergeurs).

Donc en bref en mettant ça dans le code on est paré pour toutes les situations, et même si c'est amené à être inutile, c'est transparent et pas vraiment lourd
__________________
- Réalisations
- Interface graphique : génération en javascript d'objets défilants, texte et/ou images, mode horizontal ou vertical.
ABCIWEB est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h37.


 
 
 
 
Partenaires

Hébergement Web