0

こんにちは、次のことを行うスクリプトがあります。

if(isset($_GET['reloadImages']))
{
    echo "<img src='site.com/image.jpg' />";
    exit;
}

これは index.php?reloadImages で起こります

これらの画像に基づいて更新する ajax リクエストがあります。

$('#ImageDiv').load('index.php?reloadImages');

画像の読み込みには問題なく機能しますが、私が知る必要があるのは、次のような変数を設定できるかどうかです

if(SCRIPT_RUNNER == SERVER)

そのため、システムが index.php?reloadImages に移動したときに画像を取得しますが、ユーザーが Web ブラウザーで URL を介してそこに移動したときは取得しません。

これは可能ですか?

4

1 に答える 1

0

まず、次の方法で、リンクを要求しているマシンの IP アドレスを見つけます。

if (!empty($_SERVER['HTTP_CLIENT_IP'])) {
   $ip = $_SERVER['HTTP_CLIENT_IP']; 
} elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
   $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
} else {
   $ip = $_SERVER['REMOTE_ADDR'];
}

$ip は要求元マシンの IP アドレスです。そして、あなたのコンピュータの IP が 123.456.789.1 (そのようなもの) だとしましょう。

それでは、変数に割り当てましょう

$server_ip  = "123.456.789.1";

if($ip == $server_ip && isset($_GET['reloadImages'])){
   echo "<img src=\"site.com/image.jpg\" />";
   exit;
}
else{
   echo "Sorry! you cannot see";
}
于 2013-08-05T03:00:38.683 に答える