2017-04-22 3 views
-1

J'écris du code qui est destiné à connecter les utilisateurs.Button implémente le mauvais code lorsque vous appuyez sur le bouton 'entrée'

La connexion et de la recherche fonctionnait, mais, depuis que je combiné les deux le formulaire de connexion ne met pas en œuvre son propre code et à la place, il exécute le code de recherche

EDIT: J'ai trouvé pourquoi cela arrive, il est parce que j'ai appuyé sur Entrée au lieu de sélectionner Connexion. Alors maintenant je veux savoir, comment puis-je appuyer sur entrer et implémenter le code de connexion.

est inférieure à la headerPublic.php qui contient le code de recherche

<?php 
//---------------------BEGIN SEARCH FROM THE SEARCH BAR IN PUBLIC HEADER---------------------------------- 


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

      //PHP SEARCH CODE 

     } 


//---------------------END SEARCH FROM THE SEARCH BAR IN PUBLIC HEADER---------------------------------- 
?> 

<html> 
    <head> 
     <title>VCR Exchange</title> 
    </head> 

    <body> 
      <nav> 

       <ul> 
        <li><a href="index.php">Home</a></li> 
        <li><a href="about.php">About</a></li> 


<!------------------------------------SEARCH BAR----------------------------------------------> 
        <li>  
        <form role="search" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" method="POST"> 
         <div class="form-group"> 
         <input type="search" name="search"> 
         </div> 
         <button type="submit" value = "search" name="search_button">Search</button> 

       </li> 
<!------------------------------------SEARCH BAR----------------------------------------------> 

        <li><a href="register.php">Register</a></li> 
        <li><a href="login.php">Log In</a></li> 
       </ul> 

      </nav> 

Et c'est le login.php.

<?php require('connect.php'); ?> 
<?php require('headerPublic.php'); ?> 
<?php require('session.php'); ?> 

     <form class="form" method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>"> 

      <label for="inputEmail" >Email address</label> 
      <input type="email" name="email" placeholder="Email address"> 

      <label for="inputPassword" >Password</label> 
      <input type="password" name="password" placeholder="Password"> 

      <button name="login" type="submit">Login</button> 

     </form> 

    </body> 
</html> 


<?php 

    // IF LOGIN BUTTON IS CLICKED: 
    if (isset($_POST['login'])) 
    { 

     //LOG IN CODE 

    } 

?> 
+1

Je pense que le problème est que vous ne fermez le formulaire de recherche dans votre code html. – jh1711

+2

Vous êtes également vulnérable aux injections SQL et vous obtiendrez des erreurs à partir des recherches avec guillemets simples. – jh1711

+0

Juste ajouté la fermeture tag et cela fonctionne – patreilly

Répondre

0

Le formulaire de recherche était manquant une forme balise de fermeture

<!------------------------------------SEARCH BAR----------------------------------------------> 
         <li>  
         <form role="search" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" method="POST"> 
          <div class="form-group"> 
          <input type="search" name="search"> 
          </div> 
          <button type="submit" value = "search" name="search_button">Search</button> 
         </form> 
        </li> 
    <!------------------------------------SEARCH BAR---------------------------------------------->