ホームページ  >  記事  >  バックエンド開発  >  PHP はフォーム送信メソッド分析の繰り返しを防ぐために IP を記録します。ip form_PHP チュートリアル

PHP はフォーム送信メソッド分析の繰り返しを防ぐために IP を記録します。ip form_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:11:38840ブラウズ

phpはフォーム送信方法の分析が繰り返されるのを防ぐためにIPを記録します、IPフォーム

この記事の例では、PHP が IP を記録することでフォームの繰り返し送信をどのように防止するかを分析します。参考のためにみんなで共有してください。具体的な分析は次のとおりです:

この原則は比較的単純です。ユーザーが初めて送信するときに、送信したユーザーの IP アドレスが記録されます。このようにして、ユーザーが一定期間内に再度フォームを送信すると、プロンプトが表示されます。このアプローチは通常、データの繰り返しの送信を防ぐためには非常に悪い選択です。

例、コードは次のとおりです:


コードをコピーします コードは次のとおりです:
セッション開始(); if(empty($_SESSION['ip']))//最初の書き込み操作では、データベースに書き込むかどうかを知るために、IP アドレスが記録されているかどうかを判断します
{
$_SESSION['ip']=$_SERVER['REMOTE_ADDR'];//最初の書き込みにより、その後のリフレッシュまたはリトリートの決定への道が開かれます
mysql_query("INSERT INTO admin(id, name, age) VALUES(123, 'Yao Ming', 25)");//データベースへの書き込み操作
}
else//最初の書き込み後に操作が行われたため、データベースには書き込まれません
{
echo 'フォームを繰り返し送信したり、ページを更新したりしないでください';//プロンプトや既に書かれたものをいくつか書きます
}
?>

別の方法は次のとおりです:

1: ページ上でランダム コードを生成します。つまり、ランダム コードは送信するたびに異なります。送信時にランダム コードを確認してください。

2: 提出する際、データが存在する場合は提出されないことを確認してください。

IP アドレスの繰り返しの送信を防ぎたい場合、処理前に同じレコードがあるかどうか、および IP が同じかどうかをデータベースで確認するのは最善の方法ではありません。

例、コードは次のとおりです:


コードをコピーします

コードは次のとおりです:$sql ="select * from table name where buy_tel='telephone' and IP='$ip' ";// and $time-buy_date<60 $query = $db->query( $sql ); if( $db->rows( $query ) )
{
echo('<script>alert("すでに送信済みです。再度送信しないでください!");</script>'); }
それ以外は
{
//ストレージ操作を実行します
}


この記事で説明した内容が皆様の PHP プログラミング設計に役立つことを願っています。

http://www.bkjia.com/PHPjc/928215.html

www.bkjia.com

tru​​ehttp://www.bkjia.com/PHPjc/928215.html技術記事 PHP が IP を記録することでフォームの繰り返し送信を防ぐ方法の分析 この記事では、PHP が IP を記録してフォームの繰り返し送信を防ぐ方法を分析します。参考のためにみんなで共有してください。具体的なポイント...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。