ようこそ ゲスト さん、新規登録(無料)して気になる疑問を解決しませんか?

質問

QNo.4152864 更新頻度のスクリプト
質問者:future-boy PHP初心者です。
こんなスクリプトがほしいので
参考になるページとかあったら教えて下さい。

submitが押される回数をカウントして
月に20回までしか押せないプログラムです。
また1日1回とかでもいいです。

submitが押される回数は
$POST["count"]の値に1を入れて、
$count += $POST["count"];

数えていくことができましたが、
月に29日の日もあれば、31日の日もある
月に○○回という、細かい部分まで作れませんでした。

どなたかおわかりになるから教えて下さい。
宜しくお願い致します
困り度:
  • 困っています
質問投稿日時:
08/07/05 12:53
この質問に対する回答は締め切られました。

回答良回答10pt

ANo.2 date("t", mktime());
で毎月の日数を取得してから、その日数をリミットにすればよいのでは?

あと、保存させるデータにsubmitされた日付を入力しておいて
再度submitした時にチェックさせるとかすれば1日一回の制限が出来ると思います
(今日の日付が既に保存データに入っているならsubmit出来ないように)

データの保存形式とか、submitされたデータで何をするのかが良くわからないのであんまり参考にならないかもしれませんが。
回答者:koke29
種類:アドバイス
どんな人:経験者
自信:参考意見
回答日時:
08/07/06 16:19
この回答への補足ご返答ありがとうございます。
言われたことをやってみます。

実は会員制のページを作成しているんですが、
更新を一ヶ月に10回とか1日1回とか制限をしたいんですよ。
この回答へのお礼どうもありがとうございます。
$データベースに入力した日付 == date("t", mktime());
こんな感じでできました。

あとは一ヶ月に10回とか20回とかの方法が・・・
どなたかお願い致します。
mktime()で作ってみたんですが、+30とで日付を足すと
どんどん日付がおかしくなりました。
けど、これって違う質問になりますので
いったんこれで締め切ります。

回答良回答20pt

ANo.1 ポストでいくら送っても、次回のアクセスの際には
データは残っていません。
ポイントはデータの保存でしょうね

一つはクライアント側でクッキーに保存する・・・
しかし別のマシンからやると消えてしまいます。
であれば、サーバー側にセーブデータを作っておく
履歴を20回分とっておけば、20個前のデータが
1ヶ月前かどうかを調べればいいでしょう。
回答者:yambejp
種類:アドバイス
どんな人:一般人
自信:参考意見
回答日時:
08/07/05 20:17
この回答への補足そうなんですね。ありがとうございます。
データベースに回数は保存したいと思います。
あとは月の回数とか、日の回数なんですけど・・・・
やっぱり難しいそうですね・
この回答へのお礼この回答にお礼をつける(質問者のみ)