2012-02-12 8 views
0

私はゲームのためのカウントダウンタイマーを作ろうとしています。そして、問題は、ユーザーが別のページに移動すると、カウントダウンが残りの時間を続けることができないということです。私はクッキーとセッションを設定しようとしていますが、私はそれについて考えていません。CookieまたはJavascript

+1

方向性を指すサンプルコードはありますか?ここにあなたのために働くかもしれないカウントダウンスクリプトがあります - http://keith-wood.name/countdown.html – tftd

+0

そしてここにクッキーで始まるよいリンクがあります:http://www.quirksmode.org/js/cookies。 htmlこれを前のコメントと組み合わせて、あなたは良いと思うはずです! – alfasin

+0

私はサンプルコードを持っていませんでした...しかし、別の方法を考え出しました..ありがとうございました... –

答えて

2

CookieはHTTPリクエストごとに前後して送信されるため、不要な変数を保存することは避けてください。

サーバー側でタイマーを維持するには、セッションが最適です。それは、セッションを追跡するために最低限のクッキーオーバーヘッドを作成するだけで、クッキービジネスを自動的に処理します。セッション変数はサーバー上に存在し、固有のCookieによってHTTP要求に接続されます。

カウントダウンタイマーについて:サーバー上で実行されている機能を維持してビットを反転し続けることはできないため、最善の方法は終了時間を記録することです。

PHPでセッションを開始するには、session_start()を使用してください。次に、値を$_SESSION[]配列に格納します。これらの値は要求を超えて保持されます。ここに例があります:

<?php 
session_start(); 
if (!isset($_SESSION['endTime'])) 
{ 
    $_SESSION['endTime'] = time() + 60; // end time is 60 seconds from now 
    echo "Started a new timer" 
} 
else if ($_SESSION['endTime'] > time()) 
{ 
    echo "Time left: " + ($_SESSION['endTime'] - time()); 
} 
else 
{ 
    echo "Time is up."; 
} 
+0

私はあなたのコードに訂正するかもしれませんがありません! ($ _SESSION ['endTime']> time()) ショータイム –

+0

あなたが正しいです。私はタイプミスを修正しました。ありがとう! – dragon

関連する問題