Partage
  • Partager sur Facebook
  • Partager sur Twitter

Insertion de valeur formulaire dans la bdd

j'y arrive toujours pas...

Sujet résolu
    19 mai 2011 à 16:16:55

    Bonjour,

    Je cherche a réaliser un générateur de QCM, le problème c'est que malgré les codes que je cherche sur internet je ne vois toujours pas pourquoi sa ne fonctionne pas chez moi.
    Je fais pourtant quasiment un simple copié collé et remplace mes variables mais rien n'y fait. J'aimerai enregistré les valeurs saisis dans les champs pour les mettre dans la BDD.
    la table est
    QCM ( num_qcm , nom_qcm, description_qcm, nombre_question )

    version site du zero :

    $nom_qcm = ($_POST['nom_qcm']);
    				$description_qcm = ($_POST['description_qcm']);
    				$nombre_question = ($_POST['nombre_question']);
    
    
        $pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
        $bdd = new PDO('mysql:host=localhost;dbname=qcm', 'root', '', $pdo_options);
    
    $req = $bdd->prepare('INSERT INTO qcm(nom_qcm, description_qcm, nombre_question) VALUES('.$nom_qcm.'", "'.$description_qcm.'", "'.$nombre_question.'")');
    
    
    
    	<form action="adminqcm.php" method="post">
    	
    	Le nombre maximum de réponse possible est de 4. <br><br>	
    	Nom du QCM :  <input type="text" name="nom_qcm">	<br><br>	
    	Description QCM : <input type="text" name="description_qcm">	<br><br>
    	Nombre de question :   <input type="text" name="nombre_question">	<br><br>
    


    Votre aide me serait fort utile...
    Merci
    • Partager sur Facebook
    • Partager sur Twitter
      19 mai 2011 à 16:32:22

      je viens de le rajouter après VALUES(

      => VALUES("'.$nom_qcm.'",

      sa n'a rien changé, il me dit que mes 3 variables sont pas définis ligne 13-14-15
      Notice: Undefined index
      • Partager sur Facebook
      • Partager sur Twitter
        19 mai 2011 à 16:34:39

        1/ Vérifie que tes variables $_POST existent avant de les utiliser

        2/ Tu fais un prepare mais pas d'execute

        3/ A quoi sert de faire un prepare si tu concatène directement tes variables dedans... Tu sais à quoi sert prepare ??
        • Partager sur Facebook
        • Partager sur Twitter
          19 mai 2011 à 16:44:44

          J'ai fait le "prepare" par rapport a ce que j'ai vu ici
          http://www.siteduzero.com/tutoriel-3-1 [...] tml#ss_part_1

          a la base il me semble c'est pour éviter les injections sql et faire un systeme d'automatisation quand la requête est souvent utilisé.

          Je vais essayer de corriger la

          Voila, il n'y a plus d'erreur mais j'ai aucun ajout de donnée dans la bdd donc inutile...

          EDIT :

          <code type="php"><?php
          include('config.php');
          
          // c'est dans config.php que je fais ma connection a la base de donnee par mysql connect.
          
          
          if(isset($_POST['nom_qcm'], $_POST['description_qcm'], $_POST['nombre_question'])
          {
          		
          				$nom_qcm = ($_POST['nom_qcm']);
          				$description_qcm = ($_POST['description_qcm']);
          				$nombre_question = ($_POST['nombre_question']);				
          		
          	  if(mysql_query('insert into qcm(nom_qcm, description_qcm, nombre_question) VALUES("'.$nom_qcm.'", "'.$description_qcm.'", "'.$nombre_question.'")'))
          					{		
          
          					//Si ca a fonctionne, on naffiche pas le formulaire
          						$erreur_creation = false;
          ?>
          Cr&eacute; de l'etape 1 du QCM r&eacute;ussie. <br />
          <a href="adminqcm2.php">FAIRE LA SUITE</a>
          <?php
          					}
          					else
          					{
          						//Sinon on dit quil y a eu une erreur
          						$erreur_creation = true;
          						$message = 'Une erreur est survenue lors de la creation du qcm.';
          					}
          
          }
          else
          {
          	$erreur_creation = true;
          	$message = 'Veuillez remplir les champs suivants.';
          }
          if($erreur_creation)
          {	
          	if(isset($message))
          	{
          		echo $message;
          	}
          
          
          ?>
          	
          	<form action="adminqcm.php" method="post">
          	
          	Le nombre maximum de réponse possible est de 4. <br><br>	
          	Nom du QCM :  <input type="text" name="nom_qcm">	<br><br>	
          	Description QCM : <input type="text" name="description_qcm">	<br><br>
          	Nombre de question :   <input type="text" name="nombre_question">	<br><br>
          	
          	</form>
          	
          	<input type="submit" value="Faire les questions" />
          


          sa n'a pas choqué les gens de voir que si il n'y avait pas de réaction, c'était a cause du bouton après la balise form ? :/

          j'ai resolu le probleme je ferme..
          • Partager sur Facebook
          • Partager sur Twitter

          Insertion de valeur formulaire dans la bdd

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown