- 締切済み
一定時間ごとにカウントアップする方法
お世話になります。 PHPにて、簡単なミニゲームを作ろうと思っています。 時間の経過ごとに、経験値が加算されたり、減ってしまった体力が 回復したりさせたいのですが、この『一定時間ごとに処理を行う方法』を 教えていただきたいのです。 もちろん、これはオフラインのときも行われている処理になります。 ひょっとすると、これはPHPではなく、データベース側の問題かも しれませんので、その時はデータベースの方法を教えていただきたいと 思います。 初心者で申し訳ありません。 何卒よろしくお願いいたします。
- tatapatank
- お礼率48% (91/187)
- PHP
- 回答数3
- ありがとう数0
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- notnot
- ベストアンサー率47% (4848/10262)
>しかし、この方法ですと、オンラインのときに値が加算されていきません。 それは勘違いですね。なぜそう思ったのでしょう?
- notnot
- ベストアンサー率47% (4848/10262)
前回のときの値と時刻をDBに記録しておいて、次回のアクセス時に、前回からの経過時間を計算し、その時間に相当するだけのポイントを値に加算すればいいです。 オフラインで何かを処理する必要はありません。
- yambejp
- ベストアンサー率51% (3827/7415)
>一定時間ごとに処理を行う方法 定期的にajaxなど非同期処理でDBにアクセスし、前回更新時間との差をとりながら 一定時間の経過を図ることになるでしょう。 >もちろん、これはオフラインのときも行われている処理になります。 この場合オフラインで体力回復は不正の温床になるためありえないですね
補足
回答ありがとうございます。 オフラインのときも、処理は行います。 戦国ixaのようなものを想像していただければよいかなと。 オンライン時にも、見ているだけで資源がたまっていき、 オフライン時にもログインした瞬間に経過時間分加算されていく感じです。 その時には、前回ログオフ時間から計算して、ログイン直後に 加算すればよいのかもしれませんが。 この二つの方法で表現するしかないのでしょうか。 よろしくお願いします。
関連するQ&A
- PHPで一定時間が経過すると処理が発生、は可能?
■質問1 ・PHPで、一定時間が経過すると処理が発生みたいなことはできるでしょうか? ■質問2 ・PHPで、指定時刻になったら処理が発生みたいなことはできるでしょうか?
- ベストアンサー
- PHP
- 一定時間が経過したら処理を行う.
一定時間が経過したら、ある処理を行いたいです。 if(一定時間が経過したら){ // 処理 } 例えばこのプログラムを実行してから1日たったら というようにしようと考えています. どのような条件をつければよいでしょうか?
- 締切済み
- Java
- 一定時間経過したExcelの強制終了方法を教えてください
一定時間経過したExcelの強制終了方法を教えてください ExcelBookがAutoopenになっていて、マクロが起動します。 マクロが起動してから一定時間が経過したら、マクロでそのBookを強制終了したいのですが(保存等一切しなくてよいです)・・・ マクロは現行のまま処理(画面入力や検索する物です)を継続しつつ、 一定時間のカウントを行いたいのです。 時間経過後にマクロの処理中であっても強制終了させたいのです。 何方か、ご教授ねがいませんかm(_ _)m よろしくお願いいたします。
- 締切済み
- Microsoft ASP
- 掲示板、新規投稿時にNEWの文字を一定時間表示させる。
phpにて掲示板を作成しています。 新規投稿にはnewの文字を表示させて、 48時間経過すると自動的に消えるようにしたいです。 どのような方法がありますでしょうか? 初心者で申し訳ありませんがどうぞよろしくお願いします。
- 締切済み
- PHP
- C言語 一定時間計る
C言語で、今クイズを作っています。 プレイヤーに考える時間を与え、その時間が経過したら自動的に不正解というようなソフトを作りたいです。 ただし、この場合一定時間、処理を停止させるのではなく、プレイヤーの入力を待ちながら処理を停止させ、一定時間終わると自動で次の処理(次の問題の表示)に移るようにしたいです。 サンプルソースなどもあればうれしいです。環境はBCCです。回答よろしくお願いします。
- ベストアンサー
- C・C++・C#
- VB2005 でLOOP処理を一定時間経過したら抜けさせる方法
VB2005の初心者です。 標準モジュールで、Loop処理で一定時間経過したらLoopを抜ける処理を作りたいのですが、どうすれば良いのでしょうか。 Formではないため、System.Windows.Forms.Timerは使えません。 標準モジュールなので、System.Timers.Timer を使うのかと思ったのですが、Intervalで設定した時間が経過したことをどのように知ることができるのでしょうか。 ソースは下記のような単純なループです LtimTimer = New Timers.Timer LtimTimer.Interval = 60000 LtimTimer.AutoReset = False LtimTimer.Enabled = True Do If '設定時間が経過' Then Exit Do End If 反復処理 Loop '設定時間が経過' 部分に、どのように書けば良いのでしょうか。 何かヒントになるようなことでも良いので、 皆様の知恵をお借りできれば幸いです。 よろしくお願い致します。
- ベストアンサー
- Visual Basic
- phpのプログラムで一定間隔で処理をする方法
phpのプログラムで一定間隔で処理をする方法 phpのプログラムで5秒に1回しか処理しない方法はありますか? 同時に2人がアクセスしても、2人目のアクセスは5秒待ち状態になるようにしたいです。 ユーザー側からのアクセスで実行されるのが前提なので、 制限の掛ける方法で悩んでいます。 どうぞよろしくお願い致します。
- ベストアンサー
- PHP
- 一定時間経過した後に動作させる
cgiを表示させてから任意の一定時間が経過した後に、処理を実行させたいのですが、Perlでそのような事は可能でしょうか? 例えば以下のような感じです。 ページを表示させてから1分経過した後に if($xx =~ $zz){処理} を実行。
- ベストアンサー
- Perl
- PC使用開始後に一定時間経過したら教えてくれるタイマー
PCの過熱予防と、ユーザーの視力回復のために、 PCを起動してから一定の時間が経過したら自動的に教えてくれるタイマーがあったら教えてください。
- ベストアンサー
- フリーウェア・フリーソフト
補足
回答ありがとうございます。 しかし、この方法ですと、オンラインのときに 値が加算されていきません。オンライン、オフラインのときに 両方とも処理を行いたいのです。 引き続き、回答をお願いいたします。