2017-04-22 250 views
-1

我正在編寫用於登錄用戶的代碼。按下「輸入」按鈕時,按鈕會執行錯誤代碼

登錄名和搜索,但工作過,自從我兩者相結合的登錄表單沒有實現它自己的代碼,而是,它運行的搜索代碼

編輯:我發現,之所以出現這種情況,這是因爲我一直在按Enter鍵而不是選擇登錄。所以現在我想知道,我如何按Enter鍵並實現登錄代碼。

下面是一個包含搜索代碼

<?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> 

的headerPublic.php這是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

我認爲問題是,你永遠關閉搜索形式在你的HTML。 – jh1711

+2

您也容易受到SQL注入的攻擊,並且會從單引號搜索中獲取錯誤。 – jh1711

+0

剛剛添加了關閉標籤,它的工作原理 – patreilly

回答

0

搜索表單是缺少一個右表單標籤

<!------------------------------------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---------------------------------------------->