2013-10-23 42 views
-1

我有下面的代碼 -如何檢查數據庫是否包含用戶名和密碼?

<?php 
$con=mysqli_connect("localhost","root","","my_db"); 
// Check connection 
if (mysqli_connect_errno()) 
{ 
    echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
} 

mysql_select_db("my_db"); 
$myusername=mysql_real_escape_string($_POST['myusername']); 
$mypassword=mysql_real_escape_string($_POST['mypassword']); 

echo $myusername . " " . $mypassword; 

$sql="SELECT id FROM EMPLOYEE WHERE username='" . $myusername . "' and password='" . $mypassword . "'"; 

$result=mysqli_query($con, $sql); 

// If result matched $myusername and $mypassword, table row must be 1 row 

if (mysql_num_rows($result) > 0) { 
    // Register $myusername, $mypassword and redirect to file "login_success.php" 
    $_SESSION["username"] = $myusername; 
    $_SESSION["password"] = $mypassword; 
    header("location:login_success.php"); 
} else { 
    echo "Wrong Username or Password"; 
} 

mysqli_close($con); 
?> 

EMPLOYEE表包含 1個ADMIN PASS 爲ID的用戶名和密碼

如果我將其輸入到表格並點擊提交,它開闢了這個代碼是check_login.php 我已經echo'd用戶名和密碼來檢查它是否正確輸入。 並在屏幕上顯示ADMIN PASS。所以用戶名和密碼是正確的。

現在唯一的問題是在employee表中檢查用戶名和密碼。它不起作用。

請幫忙。

+3

首先你要混合的mysqli和mysql選擇一個或其他。然後再次測試您的代碼 – Dave

+0

感謝戴夫的快速響應。它工作時,我只使用MySQL。 – omkarbhagat

回答

0

在這裏你去:

<?php 
    $con=mysqli_connect("127.0.0.1", "root", "", "my_db"); 
    if (mysqli_connect_errno($con)) 
    { 
     echo "MySql Error: " . mysqli_connect_error(); 
     } 

    $query=mysqli_query($con,"SELECT * FROM employee WHERE username='$_POST[myusername]' && password='$_POST[mypassword]'"); 
    $count=mysqli_num_rows($query); 
    $row=mysqli_fetch_array($query); 

    if ($count==1) 
    { 
     session_start(); 
     $_SESSION['username'] = $_POST['myusername']; 
     $_SESSION['password'] = $_POST['mypassword']; 
     header("location: login_success.php"); 
     } 
    else 
    { 
     echo "Invalid username or password"; 
     } 

    mysqli_close($con); 
    ?> 
相關問題