Problème extraction formulairre

Résolu
AstroRP -  
 AstroRP -

Bonjour, je créer aujourd'hui ce post car je suis bloquer sur la création de mon système d'inscription en html php j'ai écrit cette méthode pour extraire les information du formulaire et demande un echo pour savoir si tout et OK mais il ne fait pas l'echo donc ces qu'il y a un problème mais je ne sais pas d’où il vient (si le code n'est pas complet sur le visuelle ces que j'ai retirer ce qui n'était pas utille)

<?php
        require_once 'include.php';
        
        if (!empty($_POST)) {
            extract($_POST);
            $valid = true;
            
            if (isset($_POST['inscription'])) {
                echo 'ok';
            }
        }

<form method="post" style="margin-top: 10%;">
		<div class="row g-2">
  			<div class="col-md">
    			<div class="form-floating">
      				<input type="text" class="form-control" id="floatingInputGrid" name="nom" placeholder="Nom" style="width: 300px; margin-left: 50%;" required>
      				<label for="floatingInputGrid" style="margin-left: 50%;">Nom</label>
    			</div>
  			</div>
  		<div class="col-md">
    		<div class="form-floating">
      			<input type="email" class="form-control" id="floatingInputGrid" name="email" placeholder="Adresse Email" style="width: 300px; margin-left: 5%;" required>
      			<label for="floatingInputGrid" style="margin-left: 5%">Adresse Email</label>
    		</div>
 		</div>
		</div>
		<br>
		<div class="row g-2">
  			<div class="col-md">
    			<div class="form-floating">
      				<input type="text" class="form-control" id="floatingInputGrid" name="prénom" placeholder="Prénom" style="width: 300px; margin-left: 50%;" required>
      				<label for="floatingInputGrid" style="margin-left: 50%;">Prénom</label>
    			</div>
  			</div>
  		<div class="col-md">
    		<div class="form-floating">
      			<input type="password" class="form-control" id="floatingInputGrid" name="mdp" placeholder="Mot de Passe" style="width: 300px; margin-left: 5%;" required>
      			<label for="floatingInputGrid" style="margin-left: 5%">Mot de Passe</label>
    		</div>
 		</div>
		</div>
		<br>
		<div class="row g-2">
  			<div class="col-md">
    			<div class="form-floating">
      				<select class="form-select" id="floatingSelectGrid" aria-label="Floating label select example" name="genre" style="width: 300px; margin-left: 50%;" required>
        				<option selected disabled>Séléctionner votre genre</option>
        				<option value="1">Masculin</option>
        				<option value="2">Féminin</option>
        				<option value="3">Autres</option>
      				</select>
      				<label for="floatingSelectGrid" style="margin-left: 50%;">Genre</label>
    			</div>
  			</div>
  			<div class="col-md">
    			<div class="form-floating">
      				<select class="form-select" id="floatingSelectGrid" aria-label="Floating label select example" name="classe" style="width: 300px; margin-left: 5%;" required>
        				<option selected disabled>Séléctionner votre classe</option>
        				<option value="0" disabled>--------BAC PRO--------</option>
        				<option value="1" disabled>------Général------</option>
        				<option value="2">Senconde Général</option>
        				<option value="3">Première Général</option>
        				<option value="4">Terminale Général</option>
        				<option value="5" disabled>------ABIBAC------</option>
        				<option value="6">Seconde ABIBAC</option>
        				<option value="7">Première ABIBAC</option>
        				<option value="8">Terminal ABIBAC</option>
        				<option value="9" disabled>------OIB------</option>
        				<option value="10">Seconde OIB</option>
        				<option value="11">Première OIB</option>
        				<option value="12">Terminal OIB</option>
        				<option value="13" disabled>------STL------</option>
        				<option value="14">Seconde STL</option>
        				<option value="15">Première STL</option>
        				<option value="16">Terminal STL</option>
        				<option value="17" disabled>------STMG------</option>
        				<option value="18">Seconde STMG</option>
        				<option value="19">Première STMG</option>
        				<option value="20">Terminal STMG</option>
        				<option value="21" disabled>------STD2A------</option>
        				<option value="22">Seconde STD2A</option>
        				<option value="23">Première STD2A</option>
        				<option value="24">Terminal STD2A</option>
        				<option value="25" disabled>------CVPM------</option>
        				<option value="26">Seconde CVPM</option>
        				<option value="27">Première CVPM</option>
        				<option value="28">Terminal CVPM</option>
        				<option value="29" disabled>------RPIP------</option>
        				<option value="30">Seconde RPIP</option>
        				<option value="31">Première RPIP</option>
        				<option value="32">Terminal RPIP</option>
        				<option value="33" disabled>------OL------</option>
        				<option value="34">Seconde OL</option>
        				<option value="35">Première OL</option>
        				<option value="36">Terminal OL</option>
        				<option value="37" disabled>------PCEPC------</option>
        				<option value="38">Seconde PCEPC</option>
        				<option value="39">Première PCEPC</option>
        				<option value="40">Terminal PCEPC</option>
        				<option value="41" disabled>------AGORA------</option>
        				<option value="42">Seconde AGORA</option>
        				<option value="43">Première AGORA</option>
        				<option value="44">Terminal AGORA</option>
        				<option value="45" disabled>------MMV------</option>
        				<option value="46">Seconde MMV</option>
        				<option value="47">Première MMV</option>
        				<option value="48">Terminal MMV</option>
        				<option value="49" disabled>------Logistique------</option>
        				<option value="50">Seconde Logistique</option>
        				<option value="51">Première Logistique</option>
        				<option value="52">Terminal Logistique</option>
        				<option value="53" disabled>--------CAP--------</option>
        				<option value="54" disabled>------MMV------</option>
        				<option value="55">CAP 1 MMV</option>
        				<option value="56">CAP 2 MMV</option>
        				<option value="57" disabled>------LOG------</option>
        				<option value="58">CAP 1 LOG</option>
        				<option value="59">CAP 2 LOG</option>
        				<option value="60" disabled>--------BTS--------</option>
        				<option value="61" disabled>------MMV------</option>
        				<option value="62">BTS 1 MMV</option>
        				<option value="63">BTS 2 MMV</option>
        				<option value="64" disabled>------OL------</option>
        				<option value="65">BTS 1 OL</option>
        				<option value="66">BTS 2 OL</option>
        				<option value="67" disabled>------MC------</option>
        				<option value="68">BTS 1 MC</option>
        				<option value="69">BTS 2 MC</option>
        				<option value="70" disabled>------SP------</option>
        				<option value="71">BTS 1 SP</option>
        				<option value="72">BTS 2 SP</option>
        				<option value="73" disabled>------ERPC------</option>
        				<option value="74">BTS 1 ERPC</option>
        				<option value="75">BTS 2 ERPC</option>
        				<option value="76" disabled>--------DN-MADe--------</option>
        				<option value="77" disabled>------Mention Graphisme------</option>
        				<option value="78">DN-MADe Graphisme 1</option>
        				<option value="79">DN-MADe Graphisme 2 </option>
        				<option value="80">DN-MADe Graphisme 3</option>
        				<option value="77" disabled>------Mention Mode------</option>
        				<option value="78">DN-MADe Mode 1</option>
        				<option value="79">DN-MADe Mode 2 </option>
        				<option value="80">DN-MADe Mode 3</option>
      				</select>
      				<label for="floatingSelectGrid" style="margin-left: 5%;">Classe</label>
    			</div>
  			</div>
		</div>
		<br><br>
		<button name="inscription" type="submit" class="btn btn-primary" style="margin-left: 33.5%; width: 450px;">S'inscrire</button>
	</form>

4 réponses

  1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 588
     

    bonjour,

    tu pourrais commencer par ajouter deux "else", chacun avec son "echo".

    tu pourrais ensuite afficher ce que contient $_POST.

    0
    1. AstroRP
       

      bonjour, je viens de tester avec le else cela ne change rien

      0
      1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588 > AstroRP
         

        montre-nous le code avec ces deux "else", ainsi que le résultat obtenu.

        0
  2. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 832
     

    Bonjour,

    Tu as oublié de fermer ta balise PHP avant le début de ton formulaire.... normal que ça ne marche pas.


    0
    1. AstroRP
       

      si l'a balise et fermer ces juste moi qui et oublier de mettre la fermeture dans l'extrait

      0
  3. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 832
     

    Si tu as bien mis les balises de fin du PHP .. alors ton code fonctionne parfaitement ....


    0
    1. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 832
       

      Par contre, vu que tu sembles nous dire que tu ne nous as pas montré le code "complet" .. il se peut que tu aies une erreur ailleurs.

      Pense donc à activer la gestion des erreurs et n'hésites pas à faire des var_dump de tes variables pour voir ce qu'elles contiennent.

      Et tiens.. commence par appliquer ce qui est marqué ici : https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code

      SI ton souci persiste .. montre nous ton code COMPLET ( après y avoir intégré ce qui est dans le lien et mis des var_dump.. )

      0
  4. AstroRP
     

    Voila le code complet avec les deux else et la page crash au chargement

    <?php
            require_once 'include.php';
    
            if(!empty($_POST)) {
                extract($_POST)
                $valid = true;
            }
            else {
                echo '<div class="error">Erreur</div>';
            }
            
            if(isset($_POST[inscription])) {
                echo 'OK';
            }
            else {
                echo '<div class="error">Erreur 2</div>';
            }
    ?>
    
    <!doctype html>
    <html lang="fr">
    <head>
    	<title>Libér'Argouges</title>
    	
    	<!-- Intégration des méta-donnée, des liens et scripts -->
    	<?php 
    	       require_once '_head/link.php';
    	       require_once '_head/meta.php';
    	       require_once '_head/script.php';
    	
    	?>
    	
    	<style>
    	
    	body {
    	   background-image: url("_img/connexion-background.jpg");
    	   background-position: absolute;
    	   background-repeat: no-repeat;
    	   background-size: 1370px, 720px;
    	   height:100%;
           width:100%;
           margin:0 auto;
           width: 100%;
           overflow-x: hidden;
    	}
    	
    	.backsignup {
    	   postion: relative;
            margin-left: auto;
            margin-right: auto;
            top: 0;
            left: 0;
            bottom: 0;
            right: 0;
            width: 800px;
            height: 500px;
            background: #EBEBEB;
            border-radius: 10%;
        }
    	</style>
    </head>
    <body>
    	
    	<!-- Intégration de la NavBar -->
    	<?php 
    	       require_once '_menu/menu.php';
    	?>
    	
    	<img alt="Libér'Argouges" src="_img/logo.png" style="margin-left: 45.5%; margin-top: 1% ; position: absolute; width: 109.5px; height: 132px;">
    
    	
    	<form method="post" style="margin-top: 10%;">
    		<div class="row g-2">
      			<div class="col-md">
        			<div class="form-floating">
          				<input type="text" class="form-control" id="floatingInputGrid" name="nom" placeholder="Nom" style="width: 300px; margin-left: 50%;" required>
          				<label for="floatingInputGrid" style="margin-left: 50%;">Nom</label>
        			</div>
      			</div>
      		<div class="col-md">
        		<div class="form-floating">
          			<input type="email" class="form-control" id="floatingInputGrid" name="email" placeholder="Adresse Email" style="width: 300px; margin-left: 5%;" required>
          			<label for="floatingInputGrid" style="margin-left: 5%">Adresse Email</label>
        		</div>
     		</div>
    		</div>
    		<br>
    		<div class="row g-2">
      			<div class="col-md">
        			<div class="form-floating">
          				<input type="text" class="form-control" id="floatingInputGrid" name="prénom" placeholder="Prénom" style="width: 300px; margin-left: 50%;" required>
          				<label for="floatingInputGrid" style="margin-left: 50%;">Prénom</label>
        			</div>
      			</div>
      		<div class="col-md">
        		<div class="form-floating">
          			<input type="password" class="form-control" id="floatingInputGrid" name="mdp" placeholder="Mot de Passe" style="width: 300px; margin-left: 5%;" required>
          			<label for="floatingInputGrid" style="margin-left: 5%">Mot de Passe</label>
        		</div>
     		</div>
    		</div>
    		<br>
    		<div class="row g-2">
      			<div class="col-md">
        			<div class="form-floating">
          				<select class="form-select" id="floatingSelectGrid" aria-label="Floating label select example" name="genre" style="width: 300px; margin-left: 50%;" required>
            				<option selected disabled>Séléctionner votre genre</option>
            				<option value="1">Masculin</option>
            				<option value="2">Féminin</option>
            				<option value="3">Autres</option>
          				</select>
          				<label for="floatingSelectGrid" style="margin-left: 50%;">Genre</label>
        			</div>
      			</div>
      			<div class="col-md">
        			<div class="form-floating">
          				<select class="form-select" id="floatingSelectGrid" aria-label="Floating label select example" name="classe" style="width: 300px; margin-left: 5%;" required>
            				<option selected disabled>Séléctionner votre classe</option>
            				<option value="0" disabled>--------BAC PRO--------</option>
            				<option value="1" disabled>------Général------</option>
            				<option value="2">Senconde Général</option>
            				<option value="3">Première Général</option>
            				<option value="4">Terminale Général</option>
            				<option value="5" disabled>------ABIBAC------</option>
            				<option value="6">Seconde ABIBAC</option>
            				<option value="7">Première ABIBAC</option>
            				<option value="8">Terminal ABIBAC</option>
            				<option value="9" disabled>------OIB------</option>
            				<option value="10">Seconde OIB</option>
            				<option value="11">Première OIB</option>
            				<option value="12">Terminal OIB</option>
            				<option value="13" disabled>------STL------</option>
            				<option value="14">Seconde STL</option>
            				<option value="15">Première STL</option>
            				<option value="16">Terminal STL</option>
            				<option value="17" disabled>------STMG------</option>
            				<option value="18">Seconde STMG</option>
            				<option value="19">Première STMG</option>
            				<option value="20">Terminal STMG</option>
            				<option value="21" disabled>------STD2A------</option>
            				<option value="22">Seconde STD2A</option>
            				<option value="23">Première STD2A</option>
            				<option value="24">Terminal STD2A</option>
            				<option value="25" disabled>------CVPM------</option>
            				<option value="26">Seconde CVPM</option>
            				<option value="27">Première CVPM</option>
            				<option value="28">Terminal CVPM</option>
            				<option value="29" disabled>------RPIP------</option>
            				<option value="30">Seconde RPIP</option>
            				<option value="31">Première RPIP</option>
            				<option value="32">Terminal RPIP</option>
            				<option value="33" disabled>------OL------</option>
            				<option value="34">Seconde OL</option>
            				<option value="35">Première OL</option>
            				<option value="36">Terminal OL</option>
            				<option value="37" disabled>------PCEPC------</option>
            				<option value="38">Seconde PCEPC</option>
            				<option value="39">Première PCEPC</option>
            				<option value="40">Terminal PCEPC</option>
            				<option value="41" disabled>------AGORA------</option>
            				<option value="42">Seconde AGORA</option>
            				<option value="43">Première AGORA</option>
            				<option value="44">Terminal AGORA</option>
            				<option value="45" disabled>------MMV------</option>
            				<option value="46">Seconde MMV</option>
            				<option value="47">Première MMV</option>
            				<option value="48">Terminal MMV</option>
            				<option value="49" disabled>------Logistique------</option>
            				<option value="50">Seconde Logistique</option>
            				<option value="51">Première Logistique</option>
            				<option value="52">Terminal Logistique</option>
            				<option value="53" disabled>--------CAP--------</option>
            				<option value="54" disabled>------MMV------</option>
            				<option value="55">CAP 1 MMV</option>
            				<option value="56">CAP 2 MMV</option>
            				<option value="57" disabled>------LOG------</option>
            				<option value="58">CAP 1 LOG</option>
            				<option value="59">CAP 2 LOG</option>
            				<option value="60" disabled>--------BTS--------</option>
            				<option value="61" disabled>------MMV------</option>
            				<option value="62">BTS 1 MMV</option>
            				<option value="63">BTS 2 MMV</option>
            				<option value="64" disabled>------OL------</option>
            				<option value="65">BTS 1 OL</option>
            				<option value="66">BTS 2 OL</option>
            				<option value="67" disabled>------MC------</option>
            				<option value="68">BTS 1 MC</option>
            				<option value="69">BTS 2 MC</option>
            				<option value="70" disabled>------SP------</option>
            				<option value="71">BTS 1 SP</option>
            				<option value="72">BTS 2 SP</option>
            				<option value="73" disabled>------ERPC------</option>
            				<option value="74">BTS 1 ERPC</option>
            				<option value="75">BTS 2 ERPC</option>
            				<option value="76" disabled>--------DN-MADe--------</option>
            				<option value="77" disabled>------Mention Graphisme------</option>
            				<option value="78">DN-MADe Graphisme 1</option>
            				<option value="79">DN-MADe Graphisme 2 </option>
            				<option value="80">DN-MADe Graphisme 3</option>
            				<option value="77" disabled>------Mention Mode------</option>
            				<option value="78">DN-MADe Mode 1</option>
            				<option value="79">DN-MADe Mode 2 </option>
            				<option value="80">DN-MADe Mode 3</option>
          				</select>
          				<label for="floatingSelectGrid" style="margin-left: 5%;">Classe</label>
        			</div>
      			</div>
    		</div>
    		<br><br>
    		<button name="inscription" type="submit" class="btn btn-primary" style="margin-left: 33.5%; width: 450px;">S'inscrire</button>
    	</form>
    	
    	<!-- Box contour formulaire -->
    	<div class="gradient-background" style="margin-top: -31%">
        	<div class="backsignup">
       		</div>
      	</div>
    
    </body>
    <footer>
    
    </footer>
    </html>
    0
    1. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 832
       

      qu'appeles tu "cracher" ? tu as un message d'erreur ?

      Tu n'as pas appliqué les consignes données dans le lien que je t'avais fourni .....

      Donc merci d'activer l'affichage des erreurs php .... puis à nous donner les éventuels messages d'erreurs.

      PS: tu peux aussi avoir un souci d'encodage du fichier.

      Je t'invite à appliquer le chapitre 1 de ce lien : https://forums.commentcamarche.net/forum/affich-37584944-php-html-caracteres-accentues-et-l-utf8

      0
    2. AstroRP > jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention  
       

      voila le message d'erreur que l'on me donne

      Warning: Use of undefined constant inscription - assumed 'inscription' (this will throw an Error in a future version of PHP) in C:\Users\nom\Documents\Libér'Argouges\inscription.php on line 17

      0
    3. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 832 > AstroRP
       

      il manque des quotes dans ton code

       if(isset($_POST["inscription"])) {
      0
    4. AstroRP > jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention  
       

      effectivement merci, et ily a aussi l'echo de erreur2 qui et apparus se qui veut dire que ces le else de

      if(isset($_POST["inscription"])) {

      qui génére cette erreur

      if(isset($_POST["inscription"])) {
                  echo 'OK';
              }
              else {
                  echo '<div class="error">Erreur 2</div>';
              }
      0
    5. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 832 > AstroRP
       

      dis voire, le message apparaît après que tu es rempli ton formulaire et que tu l'aies envoyé ??

      Car si tu n'as pas encore envoyé ton formulaire c'est normal....

      0