【发布时间】:2015-03-01 21:16:01
【问题描述】:
我正在尝试编写 IP 禁令。用户 IP 存储在数据库中。我可以手动将该用户 IP 添加到禁止列表。不幸的是,以下代码不起作用。我认为问题在于将数组从数据库中取出。
$ip = $_SERVER['REMOTE_ADDR'];
$bannedips = array();
$notBanned = true; //later used to check, if ip is banned
$sql = "SELECT ip FROM ipban";
$result = mysqli_query($conn, $result);
while($row = mysql_fetch_array($result, MYSQL_NUM)){
$bannedips[] = $row;
}
if (in_array($ip, $bannedips)) {
$notBanned = false;
}
【问题讨论】:
-
$bannedips[] = $row['ip'];以防MYSQL_NUM-$bannedips[] = $row[0]至少尝试打印您的变量以查看它们包含的内容。 -
@SimonMathewson 我根据您的要求编辑我的答案,请参阅下面stackoverflow.com/a/28799306/3653989
标签: php mysql sql arrays mysqli