您好我有一個類登錄從外部腳本檢查MYBB的用戶名和密碼它似乎工作,但有小問題。對於不同的用戶,結果會爲所有用戶(mybb_users表中的第一個uid和電子郵件)返回相同的uid和電子郵件。請教如何解決這個問題。謝謝你的幫助。返回mybb中的所有用戶的相同的uid和電子郵件
class Login
{
function CheckLogin($username, $password)
{
$MySQL_Host = "localhost";
$MySQL_User = "root";
$MySQL_Pass = "";
$MySQL_DB = "";
$tbl_name = "";
// Connect to server and select databse.
mysql_connect("$MySQL_Host", "$MySQL_User", "$MySQL_Pass") or die(mysql_error());
// echo "Connected to MySQL<br />";
mysql_select_db("$MySQL_DB") or die(mysql_error());
// echo "Connected to Database<br />";
$sql="SELECT * FROM $tbl_name WHERE username='$username'";
$result=mysql_query($sql);
if($result == false)
return false;
// fwrite($fh, $result);
// fclose($fh);
$count=mysql_num_rows($result);
// If result matched $username and $password, table row must be 1 row
if($count==1){
$row = mysql_fetch_assoc($result);
global $mybb;
if (md5(md5($row['salt']).md5($password)) == $row['password']){
return array('uid' => $mybb->user['uid'] ,
'mail' => $mybb->user[ 'email' ],
'user' => $username
);
}
}
}
}
是否每個用戶的用戶名都不相同。你檢查過數據庫嗎? SELECT count(*)FROM tbl_name WHERE username ='username';在數據庫中試試這個查詢,並告訴我你輸出的結果是.. – TomPHP
是不同的用戶名,現在用$ sql =「SELECT count(*)FROM tbl_name WHERE username ='$ username'」;我有不正確的用戶名和/或密碼?! – user1973003
您是使用PHP運行查詢還是僅使用數據庫?它應該在數據庫中完成..並告訴我你的計數數量.. – TomPHP