PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 25-09-2019 23:21:12

linux1155
Membre
Inscription : 10-07-2012
Messages : 2

Variable prédéfinie $_POST.

Bonjour,
J'ai un formulaire qui fonctionne, enfin, qui affiche à l'écran et lorsque je clic sur le bouton pour soumettre le formulaire, mes variables de formulaire ne sont pas transférer.
Pourtant, j'ai des années derrière la cravate en PHP. C'est vrais que depuis une dizaine que je n'y es pas touché.

Voici mon formulaire (login.php):

<?php

  session_start();

  $Ecran = $_SESSION['ecran'];
  $requis = "* Requis";
  $msg = "";
 
  // Initialisation des variables SESSION.
  if($Ecran == 'login') {
    $_SESSION['numerocentral'] = 0; // Numéro de central d'alarme.
    $_SESSION['numeroclient'] = 0;  // Numéro du client.
    $_SESSION['mdp'] = '';      // Mot de passe.
    $_SESSION['utilisateur'] = '';  // Numéro de central concaténer au numéro de client.
    $_SESSION['messages'] = '';   // Les messages d'erreurs ou d'informations.
    $_SESSION['mdpnouveau'] = ''; // Nouveau mot de passe.
    $_SESSION['mdpnouveau2'] = '';  // Nouveau mot de passe répéter.
  } Else {
    usercom = $_SESSION['utilisateur'];
    motp = $_SESSION['mdp'];
    motpn = $_SESSION['mdpnouveau'];
    motpn2 = $_SESSION['mdpnouveau'];
    $msg = $_SESSION['messages'];
  }

?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

    <head>

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <link rel="apple-touch-icon" sizes="180x180" href="https://xxxx.com/images/apple-touch-icon.png">
    <link rel="icon" type="image/png" sizes="32x32" href="https://xxxx.com/images/favicon-32x32.png">
    <link rel="icon" type="image/png" sizes="16x16" href="https://xxxx.com/images/favicon-16x16.png">
    <link rel="manifest" href="https://xxxx.com/images/site.webmanifest">
    <link rel="mask-icon" href="https://xxxx.com/images/safari-pinned-tab.svg" color="#ffffff">
    <link rel="shortcut icon" href="https://xxxx.com/images/favicon.ico">
    <meta name="msapplication-TileColor" content="#ffffff">
    <meta name="msapplication-config" content="https://xxxx.com/images/browserconfig.xml">
    <meta name="theme-color" content="#ffffff">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>XXXX</title>
    <link href="/CSS/style.css" rel="stylesheet" type="text/css">

    <script type="text/javascript">

      if (!("autofocus" in document.createElement("input"))) {
              document.getElementById("bd").focus();
            }

      function bouton_valider() {
        document.forms['connect'].submit();
      }

        </script>

  </head>

  <body>

    <div class="sidebar-gauche">
      <p>Bonjour la compagnie</p>
    </div>
   
    <?php
    switch ($Ecran) {
   
      case login : // Écran du login normal.
      ?>
        <div class="login">

          <div class="connection">
            <form method='POST' id="connect" action="validationlogin.php" >

              <?php
              if($msg == "") {
              ?>
                <img src="/images/android-chrome-192x192.png" height="170px" width="170px"></img>
                <p><label><?php echo "Utilisateur"?></label></p>
                  <p><input type="text" autofocus id="bd" name="usercomp" maxlength="10" class="arrondi"></p>
                <p><label><?php echo "Mot de passe"?></label></p>
                  <p><input type="password" name="motp" maxlength="10" class="arrondi"></p>
                <p class="bouton"><a onclick="javascript:bouton_valider();">Connection</a></p>
                <p>&nbsp;</p>
              <?php
              } Else {
              ?>
                <img src="/images/android-chrome-192x192.png" height="170px" width="170px"></img>
                <?php
                if($usercom == "") {
                ?>
                  <p><label><?php echo "Utilisateur " . $requis?></label></p>
                <?php
                } Else {
                ?>
                  <p><label><?php echo "Utilisateur"?></label></p>
                <?php
                } ?>
                  <p><input type="text" autofocus class="bd" name="usercomp" maxlength="10" class="arrondi"></p>
                <?php
                if($motp == "") {
                ?>
                  <p><label><?php echo "Mot de passe" . $requis?></label></p>
                <?php
                } Else {
                ?>
                  <p><label><?php echo "Mot de passe"?></label></p>
                <?php
                } ?>
                  <p><input type="password" name="motp" maxlength="10" class="arrondi"></p>
                <p class="bouton"><a onclick="javascript:bouton_valider();">Connection</a></p>
                <p>&nbsp;</p>
              <?php
              } ?>
             
            </form>
          </div>

        </div>
      <?php
      break;
   
      case mdp : // Écran pour le changement de mot de passe.
      ?>
        <div class="login">

          <div class="connection">
            <form method='POST' id="connect" action="validationlogin.php" >

              <img src="/images/android-chrome-192x192.png" height="170px" width="170px"></img>
              <p><label><?php echo $msg?></label></p>
              <p><label><?php echo "Nouveau mot de passe"?></label></p>
                <p><input type="password" name="motpn" maxlength="10" class="arrondi"></p>
              <p><label><?php echo "Réinscrire à nouveau"?></label></p>
                <p><input type="password" name="motpn2" maxlength="10" class="arrondi"></p>
              <p class="bouton"><a onclick="javascript:bouton_valider();">Changer</a></p>
              <p>&nbsp;</p>
         
            </form>
          </div>

        </div>
      <?php
      break;
     
      case controle : // Écran pour acceptation du nouveau mot de passe.
      ?>
        <div class="login">

          <div class="connection">
            <form method='POST' id="connect" action="controle.php" >

              <img src="/images/android-chrome-192x192.png" height="170px" width="170px"></img>
              <p><label><?php echo $msg?></label></p>
              <p class="bouton"><a onclick="javascript:bouton_valider();">Continuer</a></p>
              <p>&nbsp;</p>
         
            </form>
          </div>

        </div>
      <?php
      break;
     
      default : // Valeurs incorrecte de la variable.
      ?>
      <div class="login">

        <div class="connection">
          <form method='POST' id="connect" action="https://papiweb.ca" >

            <img src="/images/android-chrome-192x192.png" height="170px" width="170px"></img>
            <p><label><?php echo "Erreur 404"?></label></p>
              <p><img src="/images/exclamation.png" height="50px" width="50px"></img></p>
            <p><?php echo "Cette page n'existe plus, désolé!"?></label></p>
            <p class="bouton"><a onclick="javascript:bouton_valider();">Acceuil</a></p>
            <p>&nbsp;</p>
         
          </form>
        </div>

      </div>
    <?php
    }?>
   
    <div class="sidebar-droite">
      <p>Bonjour la compagnie</p>
    </div>

  </body>

</html>

Voici maintenant mon fichier de validation (validationlogin.php):

<?php

  session_start(); // Appeller de la page login.
  $_SESSION['utilisateur'] = htmlspecialchars($_POST['usercomp']);   // Identifiant.
  $_SESSION['mdp'] = $_POST['motp'];     // Mot de passe.
 
?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

    <head>

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <link rel="apple-touch-icon" sizes="180x180" href="https://xxxx.com/images/apple-touch-icon.png">
    <link rel="icon" type="image/png" sizes="32x32" href="https://xxxx.com/images/favicon-32x32.png">
    <link rel="icon" type="image/png" sizes="16x16" href="https://xxxx.com/images/favicon-16x16.png">
    <link rel="manifest" href="https://xxxx.com/images/site.webmanifest">
    <link rel="mask-icon" href="https://xxxx.com/images/safari-pinned-tab.svg" color="#ffffff">
    <link rel="shortcut icon" href="https://xxxx.com/images/favicon.ico">
    <meta name="msapplication-TileColor" content="#ffffff">
    <meta name="msapplication-config" content="https://xxxx.com/images/browserconfig.xml">
    <meta name="theme-color" content="#ffffff">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>XXXX</title>

    </head>

  <body>
  <?php
    $Ecran = $_SESSION['ecran'];
    $TabClient = array(1,2);
    $_SESSION['messages'] = "Allo!";
    echo "variable Ecran : " . $Ecran;
    echo "<br /> Variable TabClient[0] : " . $TabClient[0];
    echo "<br /> Variable TabClient[1] : " . $TabClient[1];
    echo "<br /> Variable Session Message : " . $_SESSION['messages'];
    echo "<br /> Variable Utilisateur : " . $_SESSION['utilisateur'];
    echo "<br /> Variable MotDePasse : " . $_SESSION['mdp'];
   
    if($Ecran == "login") {
      echo "<br /> Variable SESSION : " . $Ecran;
    }
  ?>

  </body>

</html>

Vous remarquerez que je ne valide pas tous les variables, lorsque je me suis rendu compte que le POST ne fonctionnait pas, j'ai enlever le code au complet et recommencez jusqu'à j'obtienne la même erreur.

Il y a-t-il de la syntaxe qui a changer ou dois-je retourner à un cours ?

Merci et bonne journée.

Linux1155.

Dernière modification par linux1155 (25-09-2019 23:25:02)

Hors ligne

#2 17-10-2019 11:02:04

Pierrot
Ancien nouveau
Inscription : 08-05-2009
Messages : 1 195

Re : Variable prédéfinie $_POST.

Salut,
Il est ou le fichier control.php  ?

@plus

Pierre

Hors ligne

Pied de page des forums