別のページへのリダイレクトに php コードを使用しましたが、機能しません。途方に暮れています。私を助けてください。コードスニペットを提供しています。
if($row->cnt==1){
echo "Succes.";
// header ('Location:HomePage.php);
header("Location:http://localhost/library/HomePage.php");
}
別のページへのリダイレクトに php コードを使用しましたが、機能しません。途方に暮れています。私を助けてください。コードスニペットを提供しています。
if($row->cnt==1){
echo "Succes.";
// header ('Location:HomePage.php);
header("Location:http://localhost/library/HomePage.php");
}
成功への呼び出しを介したPHPリダイレクトの場合、header()
ページ出力の前に配置する必要があります。つまり、他のheader()、print、またはechoステートメントの前に配置する必要があります。たとえば、これは機能します。
<?php
header("Location: http://someurl.com");
exit;
?>
これはしませんが:
<?php
echo "Some text";
header("Location: http://someurl.com");
exit;
?>
ページにすでに何かを出力している場合は、次のようにJavascriptを介してリダイレクトする必要があります。
<script type="text/javascript">
window.location = "http://someurl.com";
</script>
header
ディレクティブを使用する前に、既にコンテンツを送信しています。
PHPマニュアルから
header()
実際の出力が送信される前に、通常の HTML タグ、ファイル内の空白行、または PHP から を呼び出す必要があることに注意してください。include
、またはrequire
、関数、または別のファイル アクセス関数を使用してコードを読み取り、header()
が呼び出される前に出力されるスペースまたは空行があることは、非常に一般的なエラーです。単一の PHP/HTML ファイルを使用する場合にも、同じ問題が存在します。
echo
を使用する前に削除する必要がありheader
ます。
大量のファイルを扱っていて、使用する前に出力がないかどうかわからない場合は、 Output Control Functionsheader
を確認してください。