2011-07-26 6 views
0

OK、カートカートのあるウェブサイトを実行します。このシナリオは次のとおりです。顧客がサイトに来てカートに商品を追加します。彼らは夕食に出て、チェックアウトせずにカートに商品を残す。翌日、彼らはその商品を購入したい。彼らはウェブサイトに移動し、既にカートに入っていることに気づかずにカートにもう一度追加しようとします。在庫がないというエラーが表示されます。 )今我々は売却を失う。Javascript:2つのCookieを作成して確認する

私がしようとしているのは2つのクッキーを作成することです:1つは7日間(カートクッキーと同じ)、もう1つはセッション用です。それが動作する方法はこれです:最初の訪問は2つのクッキーを作成します:1つは7日間、もう1つはセッションです。顧客が商品を追加してブラウザを閉じると言うことができます。セッションクッキーが期限切れになり、そこに7日間のクッキーが残ります。彼らが戻ってくると、スクリプトはセッションクッキーではなく、7日のクッキーが存在するかどうかをチェックし、私自身のコードを実行させます。

基本的な構造はこのようになります。

If 7DayCookie Exists { 
    If SessionCookie Exists { 
     End Script; 
    } 
    Else if SessionCookie Does Not Exist { 
     [Insert My Own Code] 
    } 
} 

Else if 7DayCookie Does not Exist { 
    Create SessionCookie; 
    Create 7DayCookie; 
    End Script; 
} 

誰でも私のためにこれを作ることができますか?私はそれがクッキーとjavascriptで非常に良い誰のためのシンチラであると仮定します。

ありがとうございます!


最終的な作業コード。

var wc = readCookie('wfwc'); 
var sc = readCookie('wfsc'); 

if (wc) { 
    if (sc) { } 
    else if (!sc) { 
     alert("It works."); 
    } 
} 

else if (!wc) { 
    createCookie('wfwc','week',7); 
    createCookie('wfsc','session',0); 
} 

答えて

2

クッキー機能は、Peter Paul Koch's quirksmodeから強くお勧めします。必要な3つの関数は、createCookie、eraseCookie、readCookieです。

セッションクッキーの場合、「期限切れ」ヘッダーを含まないクッキーを作成することをお勧めします。 7日間のクッキーの場合、7日間で期限切れのクッキーを作成することになります。

次に、JavaScriptでは、あなたのような何かを行うことができます。

theme = readCookie("theme"); 
// if a cookie called "theme" isn't present, initialize. 
if (!theme) { 
    theme = "sky.json"; 
} 

を私はPPKのスクリプトを使用して自分自身、それは厳密ではないのですが、私は、関数で型変換を避けるために===する==を変更しました必要。

+0

はい、私は自分自身を見つけました。私はそれを読んでいる。ありがとう。 – Devin

+0

私は上記の私のコードを追加しました。私はそれを動作させるように見えることはできません。 – Devin

+0

firebug(Firefox用)やChrome開発者機能などのデバッグツールを使用して、クッキーが正しく作成されていることを確認する必要があります。 –

関連する問題