0

次の手順を実行して、フォームからの一部のアイテムの再送信を回避しようとしています。

if(isset($_REQUEST['command']) && $_REQUEST['command']=='add' && $_REQUEST['itemId']>0)
{
    if (array_key_exists($pid, $_SESSION['cart']['itemId']))
    { 
    }
    else 
    {
        $pid=$_REQUEST['itemId'];
        addtocart($pid,1);
        $itemAdded = 1;
        $max = 0; 
foreach ($_SESSION['cart'] as $item) 
    { 
        $max = $max + $item['qty']; 
    }
    }
header("Location: http://".$_SERVER["HTTP_HOST"].$_SERVER["REQUEST_URI"]);
exit();
}

しかし、「このWebページにはリダイレクトループがあります」というメッセージが表示され続けます。問題は、自分のサイトを同じWebサイトに戻したいが、Ifにはもう入らないようにすることです。

何か案は?

4

1 に答える 1

0

送信後に使用するunset($_POST);か、別のページにリダイレクトしてください。これは、ほとんどの Web サイトで行われている方法です。

于 2013-03-05T19:33:53.157 に答える