これは、別のページから来た場合にリダイレクトするはずの小さなスクリプトですが、動作しません。 フォームページにリダイレクトされ続けます。有効な場合でもスクリプトリダイレクト
header('Location: ' . FORM);
exit;
はとにかくあなたがチェック考慮する必要があります。
は、ここで私はあなたにトラブルを引き起こしているものと仮定したコード
<?php
define('FORM', 'form.html');
$referer = $_SERVER['HTTP_REFERER'];
// this keeps redirecting even when I came by submiting the form to this page
if ($referer != FORM) {
header('Location: ' .FORM);
}
?>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Testing 123</title>
</head>
<body>
<?php
$name = $_GET['name'];
$surname = $_GET['surname'];
echo 'hello'. $name. 'nice to see you here mr' .$surname;
?>
</body>
</html>
'HTTP_REFERER' - >ユーザエージェントを現在のページに参照したページ(もしあれば)のアドレス。これはユーザエージェントによって設定されます。すべてのユーザーエージェントでこれを設定するわけではなく、HTTP_REFERERを機能として変更する機能もあります。要するに、それは本当に信頼できるものではありません。 http://php.net/manual/en/reserved.variables.server.php – mack
'echo $ _SERVER ['HTTP_REFERER']; exit; ' –
@yi_hありがとうございますが、あなたのヒントはあまり意味がありません –