Вашият проблем е тук:
$query = mysqli_query("SELECT * FROM users WHERE Username = ? AND Password = ?");
$userParam = array($_POST["Uname"], $_POST["Pass"]);
$st = $database->prepare($query);
$st->execute($userParam);
prepare
очаква низ, mysqli_query
е процедурна функция, която изпълнява заявката. Премахни това. Освен това с mysqli първо трябва да свържете параметрите, а не да ги предавате на execute()
.
$query = "SELECT * FROM users WHERE Username = ? AND Password = ?";
$st = $database->prepare($query);
$st->bindParam("ss",$_POST["Uname"], $_POST["Pass"]);
$st->execute();
Ето съответните раздели от ръководството:
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