一般的に、悪意のある更新とは、 -stop 送信ページを更新すると大量の無効なデータが生成されるため、悪意のあるページの更新を防ぐための PHP の方法をまとめてみましょう。
悪意のあるページ ブラッシングを防ぐ原則は次のとおりです。 ではページ間で検証文字列を渡す必要があり、
ではページの生成時に検証文字列がランダムに生成されます。文字列
は、すべての接続で必須パラメータとして渡されます。同時に、この文字列をセッションに保存します。
リンクをクリックするかフォームに入力すると、セッション内の認証コードがユーザーが送信したものと同じかどうかが判断され、同じであれば処理されます。同じでない場合は、繰り返し更新されたものとみなされます。
処理が完了すると、新しいページを生成するための検証コードが再生成されます
PHP の実装コードは次のとおりです。
<?php session_start(); $k=$_GET['k']; $t=$_GET['t']; $allowTime = 1800;//防刷新时间 $ip = get_client_ip(); $allowT = md5($ip.$k.$t); if(!isset($_SESSION[$allowT])) { $refresh = true; $_SESSION[$allowT] = time(); }elseif(time() - $_SESSION[$allowT]>$allowTime){ $refresh = true; $_SESSION[$allowT] = time(); }else{ $refresh = false; } ?>
ログイン後にコピー
私もIE6で2回送信した後に遭遇しました。私は以前そこにいたことがあります。大まかに言うと、送信の代わりに画像を使用すると、画像にsubmit()があり、それが単なる送信ボタンである場合、私は一度も送信したことがありません。二重に送信される状況が発生しました。 ここで整理してみましょう:
方法は基本的に前のものと同じです
受信したページは 2 です。php は 2 つの部分に分かれており、1 つの部分は送信された変数を処理し、もう 1 つの部分は表示しますページ
変数を処理した後、header( "location: ".$_SERVER[ 'PHP_SELF ']) を使用して自分のページにジャンプします
この部分があるかどうかを判断する必要があります。ポスト変数ではないため、スキップしてください。もちろん、他のページにジャンプすることもできます。
他のページにジャンプしたり戻ったりするときに問題が発生するため、php ファイルで行うことをお勧めします。
前のページで渡された変数が要件を満たしていない場合は、強制的に
著者別の最新記事
-
2024-10-22 09:46:29
-
2024-10-13 13:53:41
-
2024-10-12 12:15:51
-
2024-10-11 22:47:31
-
2024-10-11 19:36:51
-
2024-10-11 15:50:41
-
2024-10-11 15:07:41
-
2024-10-11 14:21:21
-
2024-10-11 12:59:11
-
2024-10-11 12:17:31