2013-03-16 101 views
0

在我的數據庫中,我有一張IP表,我禁止訪問我的PHP腳本中的某些內容。當我將我的IP輸入數據庫時​​(以字符串形式,例如「123.4.5.6」),並且當我將IP清晰地輸入到禁用的數據庫表中時,它似乎沒有回顯「禁用」。MySQL Select Query will not Work

<?php 
require_once('config.php'); 
$ip = $_SERVER['REMOTE_ADDR']; 
$checkipban "SELECT * FROM banned WHERE bannedip = '$ip' 
"; 
$banquery = mysql_query($checkipban,$con); 
if(mysql_num_rows($banquery) > 0) 
echo "banned"; 
} 
?> 

$ con是連接到config.php中的數據庫,它可以工作,因爲腳本中的其他MySQL查詢工作。數據庫表被稱爲禁用,並且只有一列稱爲bannedip。

+0

檢查是否編譯,檢查'$ ip',請檢查您的查詢是否成功。那是什麼結果'}'? – 2013-03-16 18:06:14

+0

你在$ ip中獲得什麼? – DevelopmentIsMyPassion 2013-03-16 18:06:37

回答

3

似乎錯字。你錯過了=

$checkipban = "SELECT * FROM banned WHERE bannedip = '$ip'"; 
      ^

注:

Please, don't use mysql_* functions in new code。他們不再維護and are officially deprecated。請參閱red box?請改爲了解prepared statements,並使用PDOMySQLi - this article將幫助您決定哪個。

+2

我剛剛意識到它已被棄用,我將使用MySQLi代替 – user1008096 2013-03-16 18:42:43

+0

+1來解釋不推薦的mysql_ *函數。 – Jimbo 2013-03-18 15:51:10

1

你離開=分配它varaible $checkipban,你的腳本

$checkipban = "SELECT * FROM banned WHERE bannedip = '$ip'";