所以我想做一個簡單的登錄,它的工作原理,但是當我使用bind_param,它總是顯示0行。使用mysqli登錄時通過bind_param incerrting值worngng
下面是代碼:
session_start();
include("config.php");
$email = $_POST['email'];
$password = $_POST['password'];
if ($sql = $mysqli->prepare("SELECT email FROM user WHERE email='?' AND password LIKE SHA1('?')")) {
$sql->bind_param('ss',$email, $password);
$sql->execute();
$sql->store_result();
$num = $sql->num_rows;
$sql->close();
if($num>0){
echo "true";
}else{
echo "false";
}
}
我確定收到電子郵件和密碼字段,但查詢只得到結果時,我手動輸入的,而不是「?」並刪除bind_param。
我知道這很簡單,但我無法弄清楚什麼是錯的。
在此先感謝。
你'' '?':這不是一個參數,它的字面''? –
我需要使用'?'否則查詢將不起作用;) – Th3lmuu90
您是否嘗試過'$ password = sha1($ _ POST ['password']);'然後在您的查詢中輸入'... AND password LIKE?' – Kender