Formulaire multiple à même id

Suivre ce topic
Ce topic est suivi par : Personne...
salutlacompagnie

salutlacompagnie Le 6 mai 2016 à 19:19 (Édité le 25 janvier 2019 à 17:51)

Bonjour,

Pour faire rapide j'ai 2 formulaire sur mon site, donc un pour l'inscription et l'autre pour un complément d'information.

Je voudrais recevoir les données du deuxième formulaire sur la ligne correspondante à l'id de l'utilsateur..
( dans la même table )


Merci d'avance,
TheOldNoob

TheOldNoob Le 6 mai 2016 à 23:09 (Édité le 6 mai 2016 à 23:12)

Salut l'ami,

En gros, tu a un petit formulaire avec des champs obligatoire lors de l'inscription, puis tes utilisateurs peuvent remplir d'autres infos pour compléter leur profils, si j'ai bien tout compris 😀

Dans un premier temps, tu a du faire un INSERT INTO,
La tu va devoir faire un UPDATE. Rien de bien compliquer 😉

$req = $bdd->prepare('UPDATE jeux_video SET prix = :nvprix, nbre_joueurs_max = :nv_nb_joueurs WHERE nom = :nom_jeu');
$req->execute(array( 
   'nvprix' => $nvprix,
   'nv_nb_joueurs' => $nv_nb_joueurs,
   'nom_jeu' => $nom_jeu     ));
salutlacompagnie

salutlacompagnie Le 7 mai 2016 à 11:38 (Édité le 7 mai 2016 à 15:02)

Merci d'une réponse rapide

En gros je dois faire comme ça?

Mai je ne reçois rien dans ma base de données..
<?php
session_start();



$bdd = new PDO('mysql:host=localhost;dbname=espace_membre', 'root', '');

if(isset($_POST['formformuleone'])) {
   $titre_principal = htmlspecialchars($_POST['titre_principal']);
   $contenu_presentation = htmlspecialchars($_POST['contenu_presentation']);
   $contenu_activitees = htmlspecialchars($_POST['contenu_activitees']);
   if(!empty($_POST['titre_principal']) AND !empty($_POST['contenu_presentation']) AND !empty($_POST['contenu_activitees'])) {
      $titre_principallength = strlen($titre_principal);
      if($titre_principal <= 255) {
        $contenu_presentationlength = strlen($contenu_presentation);
      if($contenu_presentationlength <= 255) {
         $contenu_activiteeslength = strlen($contenu_activitees);
         if($contenu_activitees <= 255) {
                    $req = $bdd->prepare("UPDATE membres WHERE id = ? (titre_principal, contenu_presentation, contenu_activitees) VALUES(?, ?, ?)");
               $req -> execute(array($titre_principal, $contenu_presentation, $contenu_activitees, $_SESSION['id']));
                
                $erreur = " envoyé ! <a href=\"traitement_formulaire_classique.php\">Me connecter</a>";
      } else {
         $erreur = "Votre bloc 2 n'est pas rempli !";
      }
     
   } else {
      $erreur = "Votre bloc 1 n'est pas rempli !";
     }

   } else {
      $erreur = "votre titre n'est pas completé !";
   }
   
   } else {
      $erreur = "Tous les champs doivent être complétés !";
   }
}
?>
Anthony,
BeKidding

BeKidding Le 7 mai 2016 à 16:50 (Édité le 7 mai 2016 à 16:51)

Mauvaise requête :
 $req = $bdd->prepare("UPDATE membres WHERE id = ? (titre_principal, contenu_presentation, contenu_activitees) VALUES(?, ?, ?)");
Doit devenir 
 $req = $bdd->prepare("UPDATE membres SET titre_principal = ?, contenu_presentation = ?, contenu_activitees = ? WHERE id = ?");
salutlacompagnie

salutlacompagnie Le 7 mai 2016 à 16:56

Nickel ça marche parfaitement bien.

Merci beaucoup
BeKidding

BeKidding Le 7 mai 2016 à 17:06

Pas de soucis , si tu a d'autres questions n'hésite pas 😀
Vous devez être connecté pour poster une réponse. Se connecter ou Créer un compte