Problème de quotes simples

Résolu
vincevalantine Messages postés 20 Date d'inscription mardi 25 mai 2010 Statut Membre Dernière intervention 1 juin 2011 - 7 juin 2010 à 10:17
vincevalantine Messages postés 20 Date d'inscription mardi 25 mai 2010 Statut Membre Dernière intervention 1 juin 2011 - 7 juin 2010 à 15:52
Bonjour,

J'ai besoin d'aide car j'ai un souci au niveau des quotes simples. Je fait un formulaire de saisie actuellement et il y a un champ textarea, lorsque j'entre dans mon site et que je saisisse dans ce champ textarea une phrase avec une quote simple (genre ex : Je ne dirais rien, c'est tout !) et que je valide le formulaire, rien ne s'affiche dans ma BDD.
J'utilise phpmyadmin comme base et IDE NETBEANS pour le PHP.

Voici mon code sans plus tarder :

Formulaire de saisie :

echo "Recommanderiez-vous notre agence auprès de votre entourage (amis, connaissances, autres...) ? ";
echo "<select name='choix'>"
. "<option value=''></option>"
. "<option value='Oui'>Oui</option>"
. "<option value='Non'>Non</option>"
. "<option value='Ne se prononce pas'>Ne se prononce pas</option>"
. "</select>*

";
echo "Merci d'indiquer les raisons ci-dessous.*
";

echo 'Remerciements/Commentaires :
';?>
<textarea name ="textarea1" rows=10 COLS=85></textarea>






<select name='civilite'>

. <option value=''>--- Civilité ---</option>
. <option value=1>M. </option>
. <option value=2>Mme </option>
. <option value=3>Mlle</option>
. <option value=4>M. et Mme</option>
. </select>*,

*,
*


*




Et voici la requête :

if ((($_POST["numSaisie"]="" AND $_POST["nomSaisie"]="" AND $_POST["prenomSaisie"]="" AND $_POST["emailSaisie"]="" AND $_POST["ListConnaiss"]="" AND $_POST["choix"]="" AND $_POST["noteglob"]="" AND addslashes($_POST["textarea1"]="")))
AND($_POST['quest1']="" AND $_POST['quest2']="" AND $_POST['quest3']="" AND $_POST['quest4']="" AND $_POST['quest5']=""))
{
null;
}
else
{
$reqCli="insert into client_acheteur (NumCli, NomCli, PrenomCli, EmailCli, Connaiss_agence, Recommandation, Commentaire, Note_globale, satis_quest1, satis_quest2, satis_quest3, satis_quest4, satis_quest5)
values('".$_POST["numSaisie"]."','".$_POST["nomSaisie"]."','".$_POST["prenomSaisie"]."','".$_POST["emailSaisie"]."','".$_POST["ListConnaiss"]."','".$_POST["choix"]."','".$_POST["textarea1"]."','".$_POST["noteglob"]."',
'".$_POST["quest1"]."','".$_POST["quest2"]."','".$_POST["quest3"]."','".$_POST["quest4"]."','".$_POST["quest5"]."');";
}
mysql_query($reqCli,$connexion);

Commentaire : champ de la BDD pour le textarea

9 réponses

devil_may_cry Messages postés 194 Date d'inscription dimanche 18 mars 2007 Statut Membre Dernière intervention 11 juillet 2015
7 juin 2010 à 15:42
donc utilise mysql_real_escape_string() sur toute les variable post a inserer et n'oublie pas ce qu'a dit Arto_8000
3
devil_may_cry Messages postés 194 Date d'inscription dimanche 18 mars 2007 Statut Membre Dernière intervention 11 juillet 2015
7 juin 2010 à 12:05
salut,
- je n'ai vue null par mysql_connect() donc ceci peut être une des cause
- si c'est deja dans le script utilise mysql_real _escape_string() au lien de addslashes et attention pour utiliser cette fonction il faut dabord qu'une connexion au serveur de bd soit deja établit
- si tous le deux cas evaluer au dessus sont regler et que le probleme persiste ajoute or die(mysql_error()) a ton mysql_query au moins tu poura savoir si l'erreur est du a la syntaxe de ta requete SQL
0
vincevalantine Messages postés 20 Date d'inscription mardi 25 mai 2010 Statut Membre Dernière intervention 1 juin 2011
7 juin 2010 à 12:50
en fait c'est un ptit extrait donc le début ça donne ça :

pour le formulaire de saisie :

<?php
require("connect.php");

...

echo '<form action= "questionnaire_fait_vendeur.php" method="POST" onsubmit= "return (verifForm(this))>';

...

echo "Recommanderiez-vous notre agence auprès de votre entourage (amis, connaissances, autres...) ? ";

...

?>


...


Et dans ce fichier "connect.php : "

<?php
define("SERVEUR","localhost");
define("LOGIN","root");
define("MDP","");
define("MABASE","sondage_client");
$connexion =mysql_connect(SERVEUR,LOGIN,MDP);
if($connexion)
{
mysql_select_db(MABASE,$connexion);
}
else
{
echo "problème à la connexion !";
}
?>

qui est en fait la connexion à la BDD !
0
devil_may_cry Messages postés 194 Date d'inscription dimanche 18 mars 2007 Statut Membre Dernière intervention 11 juillet 2015
7 juin 2010 à 12:56
donc suis les étapes que j'ai decrit plus haut pour voir ce que ca donne
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
vincevalantine Messages postés 20 Date d'inscription mardi 25 mai 2010 Statut Membre Dernière intervention 1 juin 2011
7 juin 2010 à 13:06
ok j'essaierai ça dans 1h parce que mes fichiers sont "au bureau" et je te dirais par la suite si le problème est résolu.
0
Arto_8000 Messages postés 1044 Date d'inscription lundi 7 mars 2005 Statut Membre Dernière intervention 13 juillet 2010 7
7 juin 2010 à 14:31
Pour tester l'égalité, il faut utiliser l'opérateur ==. Le = simple est tout simplement une assignation. Ta condition fais seulement assigner toute tes valeurs passées en paramètre POST à vide.
0
vincevalantine Messages postés 20 Date d'inscription mardi 25 mai 2010 Statut Membre Dernière intervention 1 juin 2011
7 juin 2010 à 15:34
Voilà ce qu'il m'a affiché après avoir ajouté "die(mysql_error())" :

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'est bien !','Très satisfait', 'Très satisfaisant','Très satisfais' at line 2
0
vincevalantine Messages postés 20 Date d'inscription mardi 25 mai 2010 Statut Membre Dernière intervention 1 juin 2011
7 juin 2010 à 15:35
euh plutôt "or die(mysql_error())".
0
vincevalantine Messages postés 20 Date d'inscription mardi 25 mai 2010 Statut Membre Dernière intervention 1 juin 2011
7 juin 2010 à 15:52
Je vous remercie à tous les deux de m'avoir éclairé !!!
0
Rejoignez-nous