0

私の質問は、ユーザーがクリックしたときに、ユーザーの多数のボタン/リンクを一時的に無効にする方法です。たとえば、ボタン 1、ボタン 2 の 5 つのボタンがあります。ボタン 1 をクリックすると、たとえば 6 時間はどのボタンもクリックできなくなります。PHPでユーザーIPを取得し、それをmysqlに送信して、ユーザーを6時間「禁止」する必要があります。ボタンをクリックするか、ボタンがある URL をクリックするか。そして、指定されたIPをmysqlから消去した後。ボタンは、クリックしたユーザーに対して禁止する必要があります。他のユーザーに対してではなく、更新するか、ブラウザを再起動すると、もう一度クリックするオプションが付与されます。

もしくは、htaccessでどうにかするべきでしょうか。

追加情報: PHP 5.4、mysql。サイトには基本的なログイン システム ( http://blog.geotitles.com/2011/07/php-login-script/ ) もありますが、個別に行う方が簡単だと思います。

4

3 に答える 3

1

usersデータベース テーブルにフィールドを追加しますlast_button_click

ユーザーがボタンをクリックすると、クリックした時刻を示すレコードがデータベースに書き込まれます。ページを読むとき、X 時間以上経過しているかどうかを確認last_button_clickし、X 時間以上経過している場合は、ボタンを表示します。

ユーザーが重複したアカウントを使用できないようにするには、そのユーザーの IP アドレスをデータベースに記録し、同じ IP アドレスからのサインアップを防止する必要があります。HMAなどの VPN サービスを使用しているユーザーは回避できるため、これは絶対確実ではありませんが、大多数のユーザーにとっては機能します.

必要に応じて、匿名プロキシ、VPN、および TOR の禁止を検討することもできます.

于 2013-06-07T08:40:26.870 に答える
0

データベース内のユーザーの「禁止」は正常に機能します。ボタンをクリックすると、データベースに禁止が追加され、ページが再度描画されると、データベースにクエリを実行して、禁止されているかどうかを確認する必要があります。そうである場合はボタンを表示せず、そうでない場合はボタンを表示します。

于 2013-06-07T08:36:36.690 に答える