1

ページが既にアクセスされている場合、Cookie を使用して別のページにリダイレクトしたい場合があります。ただし、ユーザーが初めてページにアクセスしたときではなく、「2番目」にこれを実行したいと考えています。私の推測では、どうにかして Cookie を Counter に組み込む必要がありますが、その方法がわかりません。これが私がこれまでに持っているものです。

if (isset($_COOKIE['beenhereonce'])) {
   $redirect_url = "Location: home.php";
} else {
    setcookie("beenhereonce",time()+120);
    $redirect_url = "Location: form.php";
}

ユーザーがページに2回目にアクセスしたときに beehereonce を設定したい。目標を達成するためにこれを改善するにはどうすればよいですか??

4

3 に答える 3

3

Cookie を使用して訪問数を保持し、コードを制御できます。

// Checking if cookie exist
if( isset($_COOKIE['visits']) )
{
    // Checking if the user already visited the site
    if( $_COOKIE['visits'] >= 1 )
        $redirect_url = "Location: home.php";

    // Increasing cookie value
    setcookie("visits", $_COOKIE['visits'] + 1, time()+120);
}
else
{
    // First visit
    $redirect_url = "Location: form.php";
    setcookie("visits", 1, time()+120);
}
于 2012-11-03T19:04:51.887 に答える
1

Cookie の値を設定するだけです。この値は、ページが訪問された回数をカウントします。次に、次のようにして確認できます。

if( isset($_COOKIE['cookiename']) )
{    
    if( $_COOKIE['cookiename[count]'] == '2' ) {
        $redirect_url = "...";
    }
    else {
        $redirect_url = "...";
        setcookie("cookiename[count]", $_COOKIE['cookiename[count]'] + 1, time()+X);
    }
}
else {
    setcookie("cookiename[count]", 1, time()+X);
}

X は、Cookie の有効期限が切れるまでの時間です

于 2012-11-03T19:15:07.327 に答える
0

上部でこれを試すことができます:

if (isset($_COOKIE['beenhereonce'])) {
   $redirect_url = "Location: home.php";
}

そして、これは一番下にあります:

setcookie("beenhereonce",time()+120);

このようにして、Cookie は最初のページの読み込みの最後に設定され、2 番目のページの読み込みでチェックされます。

于 2012-11-03T19:01:39.537 に答える