私はJavaScriptをエコーして別のページに移動する機能を持っています。ナビゲーションが行われている間、エコーJavascript window.location.hrefが動作しません
echo 'window.location.href="'.$url.'";';
は動作せず、単純に画面に表示されます。
"window.location.href="./index.php";
私はこの方法で私の機能を使用します。redirect("./index.php");
私のPHPの関数は
function redirect($url)
{
if (!headers_sent())
{
header('Location: '.$url);
exit;
}
else
{
echo '<script type="text/javascript">';
echo 'window.location.href="'.$url.'";';
echo '</script>';
echo '<noscript>';
echo '<meta http-equiv="refresh" content="0;url='.$url.'" />';
echo '</noscript>'; exit;
}
}
があなたの$ URLが正しく場合にエスケープする必要がありますそれは」。とにかく、ページはHTMLページです?ブラウザはプレーンテキストとしてそれをinterprettingされる可能性があります。また、少し知識をひけらかすされ、HTTPの仕様のおもむくままに含まれています相対URLではなく完全なURIを持たなければなりません – Corbin
私のプロジェクトでは、相対URLを指定する必要があるため、その選択肢はありません – zed
PHPページが自動的にHTMLとして解釈されるわけではありません。 – Corbin