2011-12-18 1 views
0

次のコードのサポートが必要な場合は、 "id"を提供するフォームがあります。何らかの理由で次のスクリプトがデータベースからデータを取得します。ゼロ、どのように私の404ページにURLを転送することができます。PHP "id"がURLに移動する場合

コード:

$id=$_GET['id']; 
     include ('dbconnection.php'); 
     include ('dbopen.php'); 
     include ('header.php'); 

私は次のことを試してみましたが、「ID」の値がnullの場合は何の成功は404.phpページにクライアントを移動しないように。

if (isset($_GET['id']) && !empty($_GET['id'])) { 

    header('Location: index.php'); 
} 

助けてください:あなたのコードは動作するはずです

if (!isset($_GET['id']) || empty($_GET['id'])) { 
    header('Location: 404.php'); 
    exit(); // don't execute any code after it! 
} 
+0

[PHPでエラー404を作成するにはどうすればいいですか?](http://stackoverflow.com/questions/1381123/how-can-i-create-an-error-404-in-php) –

答えて

4

はこれを使用してください。しかし、ヘッダーの前に出力(エコーまたはコンテンツがない)があってはなりません。

+0

これはクローラーに問題を引き起こす「ソフト404」を生成します。何かが見つからないときは、 'header( 'HTTP/1.1 404 not found');'を使用し、リダイレクトせずにエラーを表示する必要があります。 – Kornel

+0

私は知っているが、彼はこれを求めており、現在のプロトコルは 'HTTP/1.0'だと思う。 – noob

+0

HTTP/1.0を出力するか1.1を出力するかは問題ではない。出力されるステータスが重要な違いです。 – Kornel

関連する問題