在数组中插入和使用数据库信息

时间:2013-07-02 06:41:03

标签: php

我有一个数据库表,其中包含访问该网站的用户的IP。我正在尝试为页面创建IP禁止系统。我希望在我的数据库表中列出的被阻止的IP列在无法访问此特定页面的IP数组中。我一直在收到错误,我无法弄清楚如何让它正常工作。这就是我到目前为止所使用的:

PHP:

$getBlockedUsers = mysqli_query($con,"SELECT ip FROM blog_comments WHERE blocked='yes'");
$separateIps = implode(", ", mysqli_fetch_array($getBlockedUsers));

if (in_array ($_SERVER['REMOTE_ADDR'], $separateIps)) {
   header("location: http://www.google.com");
   exit();
}
  • 我正确连接到数据库

2 个答案:

答案 0 :(得分:1)

$getBlockedUsers = mysqli_query($con,"SELECT true FROM blog_comments WHERE blocked='yes' AND ip='" . $_SERVER['REMOTE_ADDR'] . "' LIMIT 1");

if ($getBlockedUsers->num_rows > 0) {
   header("location: http://www.google.com");
   exit();
}

答案 1 :(得分:0)

删除implode功能

$separateIps = mysqli_fetch_all($getBlockedUsers, MYSQL_NUM);

in_array期望参数2是一个数组。使用implode时,您将获得一个字符串而不是数组。