0

私のデータベースには、PHPスクリプト内の特定のものへのアクセスを禁止したIPのテーブルがあります。IPをデータベースに(文字列として、例「123.4.5.6」として)入力し、禁止されたデータベーステーブルにIPを明確に入力したときに、「禁止」とエコーされないように見える場合。

<?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クエリが機能するため機能します。データベーステーブルはbannedと呼ばれ、bannedipと呼ばれる列は1つだけです。

4

2 に答える 2

3

タイプミスのようです。あなたが逃しました=

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

ノート:

mysql_*新しいコードで関数を使用しないでください。それらはもはや保守されておらず、公式に廃止されています。赤いボックスがか? 代わりに準備済みステートメントについて学び、 PDOまたはMySQLiを使用してください。この記事は、どちらを決定するのに役立ちます。

于 2013-03-16T18:06:23.253 に答える
1

あなたは=それを変数に割り当てるために残しました$checkipban

$checkipban  = "SELECT * FROM banned WHERE bannedip = '$ip'";
于 2013-03-16T18:07:10.320 に答える