我为正在开发的应用程序上的用户创建了一个任意登录系统,并且我正在使用 mysqli 从 MySQL 切换。但是,我遇到了一些问题,因为无论您输入什么数据,它都会成功登录。显然这是错误的,我认为这与我的 fetch 语句有关。这是代码:
$sid = /* arbitrary value */
$con = new mysqli($mysql_host,$mysql_user,$mysql_password,$mysql_database);
$stmt = $con->prepare("SELECT uid, pwd FROM schools WHERE uid=?");
$stmt->bind_param("i", $sid);
$stmt->execute();
$stmt->bind_result($schoolid, $password);
$stmt->fetch();
$stmt->close();
任何人都知道这里发生了什么并且能够用简单的英语向相关的编码新手描述它吗?
编辑:检查系统的其余代码是这样的。输入的用户 ID 是$sid
,输入和加密的密码是$cleanpwd
。
if ($sid == $schoolid and $cleanpwd == $password) {
header('Location: loginsuccess.php');
}
else {
header('Location: login.php?error=1'); }