Aide sur requete d'jaout sql via form php
peanut
-
Barracuda8 Messages postés 108 Date d'inscription Statut Membre Dernière intervention -
Barracuda8 Messages postés 108 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Voici ma requête sql
mysql_query("INSERT INTO `actions pm`
( PM, submitter, FORMATION, Datepropos, Commentaire, SOCIETE, BIEN, ceexistant, applicable )
VALUES('$PM', '$submitter', '$typemodif', '$date', '".$commentaire."', '$societe', '".$bien."', '".$ceexistant."', '')") or die(mysql_error());
Seulement, dans mon formulaire, le champ "commentaire" est susceptible de contenir des apostrophes.
Comment traduire cette requête pour tout s'exécute correctement ?
Merci d'avance pour votre aide.
Voici ma requête sql
mysql_query("INSERT INTO `actions pm`
( PM, submitter, FORMATION, Datepropos, Commentaire, SOCIETE, BIEN, ceexistant, applicable )
VALUES('$PM', '$submitter', '$typemodif', '$date', '".$commentaire."', '$societe', '".$bien."', '".$ceexistant."', '')") or die(mysql_error());
Seulement, dans mon formulaire, le champ "commentaire" est susceptible de contenir des apostrophes.
Comment traduire cette requête pour tout s'exécute correctement ?
Merci d'avance pour votre aide.
Configuration: Windows XP Internet Explorer 7.0
2 réponses
-
Salut,
Utilise les fonctions PHP addslashes (pour mettre en bdd) et stripslashes (pour recuperer de la bdd).
Tu trouveras facilement des explications dessus.
Par exemple:
mysql_query("INSERT INTO `actions pm`
( PM, submitter, FORMATION, Datepropos, Commentaire, SOCIETE, BIEN, ceexistant, applicable )
VALUES('$PM', '$submitter', '$typemodif', '$date', '".addslashes($commentaire)."', '$societe', '".$bien."', '".$ceexistant."', '')") or die(mysql_error());
voir aussi:
http://www.allhtml.com/articles/detail/249
Bonne journée,
Barracuda-
Salut et merci pour ta réactivité
Ce que tu veux me dire donc, c'est qu'avant de faire mes requêtes, j'ajoute :
// Ajout des backslashes
$commentaire=addslashes($commentaire);
Puis à la relecture (qui est pour moi dans un autre fichier PHP) j'écris :
$commentaire=stripslashes($commentaire);
Donc, dans ma base sql, les slashs apparaissent donc dans mon champ commentaire ?
-
-
Oui tu peut faire comme cela ou directement dans la requête comme je l'avais fait dans mon post précédent.
Effectivement, l'ajout des backslahes se verra dans ta bdd, c'est pourquoi on utilise stripslashes pour les récupérer.