$mysqli = mysqli_connect("localhost", "root", "pass", "test");
function check_login($mail,$pwd){
global $mysqli;
if($stmt= $mysqli->prepare('SELECT COUNT(*) FROM `users` WHERE mail = ? AND pwd = MD5(?)')){
$stmt->bind_param("ss", $mail, $pwd);
$stmt->execute();
$stmt->bind_result($count);
$stmt->close();
var_dump($count);
}
return ($count > 0 ? true : false);
}
check_login('[email protected]','pass');
我已經通過在stackoverflow上看到一些腳本來編寫此腳本。我試圖運行它,發現腳本執行後$ count爲NULL。有人能告訴我爲什麼這個腳本返回NULL而不是給我結果?
我想知道爲什麼這不適合我。我試圖在Mysql上運行相同的命令,它顯示了我的結果。
有人幫我吧..
我可以看到類似「命令不同步;現在不能運行此命令」 – user1814971
請參閱http://php.net/manual/en/mysqli-stmt.bind-result.php - 您還需要在變量被填充之前發出fetch()調用。 – mario
@mario謝謝親愛的,這現在正在爲我工作。 – user1814971