如果未批准,则限制用户访问url



我正在使用php和mysql创建一个用于医疗目的的网站。用户可以创建一个帐户上传医疗文档,网站管理员可以查看用户注册的信息,并选择批准或不批准用户。下面的代码只用于在管理员批准用户的情况下访问迷你网店,我现在想弄清楚的是,如果没有批准的用户,他们手动输入网店url,如何将用户重定向回用户页面。下面的代码也给了我这个错误,但运行得很好"警告:mysqli_stmt::bind_param((:变量数量与第50行C:\examplep\htdocs\web project medical\user-page.php中准备好的语句中的参数数量不匹配">

<?php
$sql_con = new mysqli('localhost', 'root', '' , 'medical_db');
if($stmt = $sql_con->prepare("SELECT approved FROM users WHERE approved = 'Approved'")) {
$stmt->bind_param("s", $Approved);
$stmt->execute();
$stmt->bind_result($Approved);
while ($stmt->fetch()) {
echo '<a href="products.php">store access</a>';
}
$stmt->close();
}
?>

问题中包含的错误指向prepare()语句。来自PHP:mysqli::prepare-手动:

通过在适当的位置嵌入问号(?(字符,此[query]参数可以在SQL语句中包括一个或多个参数标记。

您的查询中没有包含问号字符。因此,您尝试使用bind_param()绑定的参数数量与您在查询中使用问号字符标记的数量之间存在不匹配。

更新您的查询,以便在您希望插入绑定参数的位置包含问号字符。

最新更新