ページ上のフォームを検証していますが、同じURLクエリを使用して同じページにリダイレクトし&valid=false
、リダイレクト時にクエリの最後に追加する必要があります。
リダイレクト時にURLが繰り返されないようにするには、次のようにします。
http://test.com/index.php?a=1&b=2&valid=false&a=1&b=2&valid=false
使ってます $_SERVER['REQUEST_URI']
ページ上のフォームを検証していますが、同じURLクエリを使用して同じページにリダイレクトし&valid=false
、リダイレクト時にクエリの最後に追加する必要があります。
リダイレクト時にURLが繰り返されないようにするには、次のようにします。
http://test.com/index.php?a=1&b=2&valid=false&a=1&b=2&valid=false
使ってます $_SERVER['REQUEST_URI']
方法はたくさんありますが、簡単な方法を次に示します。
$url = $_SERVER['REQUEST_URI'];
if (!isset($_GET['valid'])) {
$url.='&valid=false'; //assuming there are always additional parameters, otherwise you must check whether to use '?' or '&'
}
ただし、parse_url()、strpos()、正規表現なども使用できます
パラメータを変更した後、 http_build_query()を使用できます。
<?php
$_GET['a'] = 1;
$_GET['b'] = 2;
$_GET['valid'] = 'true';
$url = $_SERVER['SCRIPT_NAME'].'?'.http_build_query($_GET);
?>
そのように、 が定義されていない場合$_GET['valid']
は作成され、定義されていない場合は変更されます。