0

多くの「サブページ」があるmain.phpファイルがあります(タブがあり、それらを切り替えることができるので、http://mydomain.com/main.phpアドレスは変更されません)。私は ajax リクエストを介してそれらを動的に受け取ります。そのような「サブページ」の1つに、ダウンロードリンクがあります。例えば

                  <a href="dwnl.php?file=fish.avi">fish</a>

dwnl.php ファイルには、次のようなものがあります

 // . . . . .
 $file =basename($_GET['file']);
 if(file_exists($file))
 {
   // download file
 }
 else  exit;

私の問題は、ファイルが存在しない場合に発生します (つまり、dwnl.php ファイルの 'else' ブロック内)。ユーザーがそのようなリンクをクリックすると、ブラウザーはユーザーをhttp://mydomain.com/dwl.php?file= ... アドレスにリダイレクトします。このようなリダイレクトを禁止するにはどうすればよいですか? PHPを使ってやりたいです(可能であれば)。では、「else」ブロックで何をすればよいのでしょうか?

4

3 に答える 3

0

1) エラーメッセージとタイムアウトしたメタリフレッシュタグを含む単純な html を出力できます。5 秒後にhttp://example.com/
に リダイレクトします。

<meta http-equiv="refresh" content="5;URL='http://example.com/'">

2) header()を使用して、メッセージなしですぐにリダイレクトできます。

header("Location: http://site.com/page?var=123");

3) エラー404ファイルが見つかりません:

header('HTTP/1.0 404 Not Found', true, 404);
于 2013-04-28T13:49:17.060 に答える