2011-01-14 11 views
0

ログイン後、$value
$valueにユーザを送って欲しいと思います。
それは完全なURLです:http://example.com/page.php?id=6

が、それはheader("Location: ".$value);文を無視します:

if($iniciando->iniciar()) { 
    if (isset($_SESSION['redirect'])) { 
     $he ="http://funcook.com" . $_SESSION['redirect']; 
     mostrar_notificacion($he); 
     header("Status: 301"); 
     header("Location: " . $he, true, 301); 
    } else { 
     imprimir_sesion_iniciada(); 
    } 
} else { 
    imprimir_formulario_sesion(); 
} 
+0

たぶん完全なコードを示しています。

あなたは、より良い、それをフォローするすべてのブラウザのためのコードをリダイレクト使用する必要があります。後で 'die()'をしますか? –

+0

このコードの前に何かを印刷しましたか? exit()を試してください。 header() –

+0

リダイレクトが機能するために 'header'の後の' die'は必要ありません。エラーを有効にすると、Mattが提案したように、おそらくヘッダーが警告を送信することになります。 – webbiedave

答えて

2

header("Location x");は、他の出力がブラウザに送信される前に呼び出される必要があります。これには、<?php?>マーカー以外のスペースが含まれます。

また、デバッグの目的でprint/echo文も使用しないでください。

+1

また、Webサーバーのエラーログを見てください。それはあなたの友人です。 – Nathan

+0

よく、私はユーザーが関数のチェックにログインしています... –

0

あなたはChromeを使用していると思われますか?

header("Status: 301"); 
    header("Location: ".$URL, true, 301); 
+0

'header();'リダイレクトに続いてChromeに問題があります。あなたが少し詳しく説明できるならば、あなたの答えは適用可能かもしれません:http://stackoverflow.com/questions/8012279/why-does-chrome-cancel-302-downloads –

関連する問題