Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problème au niveau du formulaire PHP

    6 avril 2020 à 6:14:35

    Bonjour, étant debutant en PHP j'ai crée un formulaire depuis un site d'information car depuis le confinement on ne peut plus demander aucun conseil à ma prof qui ne répond jamais et je suis un peu timide..

    On a pas appris la POO on est en dessous j'ai retrouver un tuto sur internet que notre prof nous a donner pour nous apprendre , j'ai fait ce code là : 

       <?php
            if (isset ($_POST['valid'])){
                //On récupère les valeurs entrées par l'utilisateur :
                $Prénom=$_POST['Prénom'];
                $Nom=$_POST['Nom'];
                $Pseudo=$_POST['Pseudo'];
    			$DateN=$_POST['DateN'];
    			$Genre=$_POST['Genre'];
    			$Email=$_POST['Email'];
                //On construit la date d'aujourd'hui
                //strictement comme sql la construit
                $today = date("y-m-d");
                //On se connecte
                connectUtilisateur();
     
                //On prépare la commande sql d'insertion
                $sql = 'INSERT INTO Inscription VALUES(NULL,$Prénom,$Nom,$Pseudo,$DateN,$Genre,$Email,$today)'; 
     
                /*on lance la commande (mysql_query) et au cas où, 
                on rédige un petit message d'erreur si la requête ne passe pas (or die) 
                (Message qui intègrera les causes d'erreur sql)*/
                mysql_query ($sql) or die ('Erreur SQL !'.$sql.'<br />'.mysql_error()); 
     
                // on ferme la connexion
                mysql_close();
            }
            ?>

    Tout aller bien j'ai constaté des erreurs que le navigateur m'afficher quand je lancer ma page ( comme par exemple la supression des ' et des " et des . dans la commande INSERT )

    Après sa plus aucune erreur afficher je me dis que c'est bon j'ai qu'à cliquer sur le submit pour lancer, mais quand je clique sur le subit rien ne se passe.. comme si j'appuyer sur du vide :(

    Merci de m'aider svp j'ai bien envie d'utiliser de la POO mais la professeur me dit de faire attention et j'ai compris dans le sens où quand un oral se préparera il faudra que mes collègue comprenne la POO et j'ai cette habitude de tout faire seul à cause de certaine raison.. alors je suis obliger d'être en dessous de la POO.. 

    Merci pour l'intérêt que vous porterez à ma question.

    • Partager sur Facebook
    • Partager sur Twitter
      6 avril 2020 à 6:41:14

      Bonjour,

      Tu utilises mysql_query qui est une fonction qui n'existe plus en php version 7.

      Vérifie ta version de php.

      De toute manière il ne faut pas utilise mysql_query.

      https://www.php.net/manual/fr/function.mysql-query.php

      Utilise plutôt PDO.

      Sur ce site même il y a des exemples en PDO pour faire ce que tu veux.

      A+

      • Partager sur Facebook
      • Partager sur Twitter
        6 avril 2020 à 7:47:49

        D'accord c'est que j'ai vu en faisant des recherches que tout le monde utilise PDO mais maintenant sa me dit que j'ai écris à la ligne 14 connectUtilisateur n'est pas valable..
        • Partager sur Facebook
        • Partager sur Twitter
          6 avril 2020 à 8:09:45

          Elle est défini où ta fonction connectUtilisateur ?

          Car si elle n'est pas visible depuis ton script ...

          A+

          • Partager sur Facebook
          • Partager sur Twitter
            6 avril 2020 à 8:28:29

            Si elle est visible, juste avant la ligne du INSERT INTO, et je pense qu'elle a un problème soit dû au fait que ce soit ancien ou à la version php ou autre je ne sais pas... Sa fs 2jour que jessaye de crée un formulaire en passant pas des dizaines de chemins j'ai l'impression de mener à nul part.

            J'ai essayer de passer dans un formulaire en Programmation orientée mais beaucoup d'erreur de syntaxe et tout sa alors j'essaye de faire simple avec ce type de formulaire un peu ancien que je vous ai présenter.

            • Partager sur Facebook
            • Partager sur Twitter
              6 avril 2020 à 9:38:31

              Non, ligne 14 tu appelles la fonction mais tu ne l'as défini pas.

              A+

              • Partager sur Facebook
              • Partager sur Twitter
                6 avril 2020 à 9:42:59

                Bonjour

                Ne mets pas de caractères accentués dans le nom de tes variables (Prénom), ni dans le "name" de tes input

                • Partager sur Facebook
                • Partager sur Twitter
                  6 avril 2020 à 11:38:46

                  Le SQL n'est pas correct (il manque les quotes pour le SQL) et tu n'échappes rien = injections SQL et requête qui plante si on met une ' dans tes variables.

                  Pourquoi tu ne suis pas un cours sur PDO, celui d'ici par exemple, histoire de faire une requête préparée correcte ? Cela dit, mysqli permet aussi les requêtes préparées.

                  PS : PDO est une classe, certes, mais ce n'est pas pour autant que tu dois écrire ton propre code de manière OO (MVC ou assimilé). J'ai comme l'impression qu'il y a une confusion là-dessus.

                  EDIT : erf, il a deux sujets en cours avec deux approches différentes :/

                  -
                  Edité par julp 6 avril 2020 à 11:44:14

                  • Partager sur Facebook
                  • Partager sur Twitter

                  Problème au niveau du formulaire PHP

                  × 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