2013-08-24 87 views
-1

我寫了這段代碼,但它不工作。它基本上沒有做任何事情。這個表單放在表單所在的login.php上。表單動作設置爲php自我,因此它將信息發送給自己,我試圖檢查信息是否有效或不使用此代碼;通過PHP連接數據庫來檢查用戶登錄信息

if ($_POST['username'] != "" && $_POST['password'] != "") { 
$data = mysqli_query($dbcon, " SELECT * 
           FROM `users` 
           WHERE `user_name` LIKE '".$_POST['username']."' 
           AND `user_password` LIKE '".$_POST['password']."'") or die(mysql_error()); 

     // if this user exists 
     if ($data->num_rows == 1) { 
       $result_row = $data->fetch_object(); 
       $_SESSION['user_name'] = $result_row->user_name; 
       $_SESSION['user_password'] = $result_row->user_password; 
       $_SESSION['user_logged_in'] = 1; 
     } else { 
      "Wrong Password"; 
     } 

} 
+1

你會得到錯誤或會發生什麼? –

+2

您應該調用'mysqli_error($ dbcon)',而不是'mysql_error()'。你不能混用mysql_XXX和mysqli_XXX函數。 – Barmar

+0

沒有錯誤。沒有反應..它看起來像重新加載 – Commandos

回答

-1

與其他人的幫助問題解決了!

謝謝大家!

if ($_POST['username'] != "" && $_POST['password'] != "") { 
$data = mysqli_query($dbcon, " SELECT * 
           FROM `users` 
           WHERE `user_name` = '".$_POST['username']."' 
           AND `user_password` = '".$_POST['password']."'") or die(mysqli_error()); 

     // if this user exists 
     if ($data->num_rows == 1) { 
       session_start(); 
       $result_row = $data->fetch_object(); 
       $_SESSION['user_name'] = $result_row->user_name; 
       $_SESSION['user_password'] = $result_row->user_password; 
       $_SESSION['user_logged_in'] = 1; 
     } else { 
      echo "Wrong Password"; 
     } 

} 
+0

使用預準備語句,不要重複出現錯誤,如允許SQL注入。 – Prix

+0

@Prix:他*是* OP。 –

+0

我只記得php ..所以我已經忘記了大部分的東西。我知道我必須添加SQL注入和其他安全的東西..我只需要趕上.. – Commandos

相關問題