ユーザーの送信を 1 回のみに制限する PHP の実装方法: 1. "$ip=getenv('REMOTE_ADDR');" を通じて IP を取得し、IP を使用して制限します; 2. IP をクライアントのブラウザ 1 日有効な COOKIE で十分です。
#この記事の動作環境: Windows 7 システム、PHP バージョン 7.1、Dell G3 コンピューター。
PHP でユーザーの送信を 1 回のみに制限するにはどうすればよいですか?
php は投稿数を制限します。たとえば、投稿できるのは 1 日に 1 回だけです。
まず、IP 制限を使用する場合、取得できるのは外部 IP のみです。他のユーザー、次にインターネット カフェにいる全員。コンピュータの IP は同じで、このインターネット カフェでは 1 日に 1 台のコンピュータだけが送信できます。顧客が主にホーム ユーザーである場合は、IP 制限を使用できます。そうでない場合、IP 制限により多くの罪のない人々が制限されることになります。
IP を取得する方法:
$ip=getenv('REMOTE_ADDR');
IP 制限は依然として破られる可能性があります。ホーム ブロードバンド ユーザーは、再度ダイヤルするのをやめると、新しい IP を取得します。
サーバーが 192.1.1.100 などのイントラネット IP アドレスを取得できないことを再度確認します。
2 番目に、IP に加えて、COOKIE 制限も使用できます。クライアントのブラウザに 1 日間有効な COOKIE を保存すると、プログラムがその COOKIE に制限があることを検出します。この方法では、インターネット カフェには厳しすぎる IP 制限の問題は解決できますが、賢明な顧客がブラウザの COOKIE を自分でクリアするという問題は解決できません。
1 日有効な COOKIE を設定する方法:
setcookie("TestCookie", $value, time()+24*3600);
上記の 2 つの方法にはそれぞれ独自の長所があり、それらを組み合わせてもう少し合理的な方法を作成することはできますが、どちらでもありません。そのうち完璧です。
関連紹介:
Cookie はユーザーを識別するためによく使用されます。 Cookie は、サーバーがユーザーのコンピュータ上に残す小さなファイルです。同じコンピュータがブラウザを通じてページをリクエストするたびに、Cookie がコンピュータに送信されます。 PHP を使用すると、Cookie 値を作成および取得できます。
setcookie() 関数は、Cookie を設定するために使用されます。
注: setcookie() 関数は タグの前に配置する必要があります。
文法
setcookie(name, value, expire, path, domain);
推奨学習: 「PHPビデオチュートリアル」
以上がPHPでユーザーが一度だけ送信できるように制限する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。