Vấn đề của bạn là ở đây:
$query = mysqli_query("SELECT * FROM users WHERE Username = ? AND Password = ?");
$userParam = array($_POST["Uname"], $_POST["Pass"]);
$st = $database->prepare($query);
$st->execute($userParam);
prepare
mong đợi một chuỗi, mysqli_query
là một hàm thủ tục thực hiện truy vấn. Loại bỏ điều đó. Ngoài ra, với mysqli, trước tiên bạn cần phải ràng buộc các tham số, không chuyển chúng vào execute()
.
$query = "SELECT * FROM users WHERE Username = ? AND Password = ?";
$st = $database->prepare($query);
$st->bindParam("ss",$_POST["Uname"], $_POST["Pass"]);
$st->execute();
Đây là các phần có liên quan của sổ tay hướng dẫn:
http://php.net/manual/en/mysqli.prepare.php
http://php.net/manual/en/mysqli-stmt .bind-param.php
http://php.net/manual/en/mysqli-stmt.execute .php