1

IPアドレスに基づいてクライアントブラウザでJavascriptを実行しようとしています。名前などのユーザー情報のテーブルと、IPとJavascriptが実行されるものを含む別のテーブルがあります。

たとえば、IP 192.168.0。*(私のローカルネットワーク)を持つすべての人が、このページを表示するたびにGoogleにリダイレクトされるようにします。データベースでは、リストされているIPは192.168.0.%であり、javascript列にはwindow.location.href = 'http://www.google.com';

IP192.168.0.5の誰かが私のページにアクセスします。PHPはSQLクエリを実行してIPを検索し、実行する必要のある特定のJavascriptがあるかどうかを確認します(データベースにない場合、クライアントには何も起こりません)。window.location.href = 'http://www.google.com';ワイルドカードに適合するため、実行する必要があることがわかります。

SQLテーブルのエントリにワイルドカードを保持し、クエリで使用されているかのように動作させることはできますか?動作しますかmysql_query("SELECT javascript_to_execute FROM ip_table WHERE ip='$user_IP'");

4

1 に答える 1

1

はい、ワイルドカード文字 % を文字列の一部として保存できます。IP 範囲 192.168.0.* はデータベースに として保存できます192.168.0.%。クエリは次のようになりますSELECT javascript FROM ip_table WHERE '$user_IP' LIKE ip

于 2012-08-25T19:22:36.707 に答える