0

私のアプリケーションは、外部の PHP ファイルを呼び出して、情報を取得し、SQL データベースに送信します。行われた各リクエストは、私が想定しているブラウザの開発者パネルに表示され、手動で簡単に再実行できます。リクエストの「ソース」を検出しようとすることは、スクリプトの手動呼び出しを制限する正しい方法ではないことを理解しています。

これらのスクリプトの再実行を防止したい主な理由は、ユーザーが獲得した以上のものを与える ( UPDATE user_scores SET score = score + x) か、何度でも前の状態に戻る( ) 可能性があるためですUPDATE user_scores SET score = x

1 回だけ実行することを意図したスクリプト内のクエリが、最初は実行され、二度と実行されないようにするための実証済みの方法は何ですか?

4

1 に答える 1

1

このようなクライアント側のコントロールに依存するべきではありません。PHPスクリプトは、ユーザーが誰であるかを確認し、取得する前に、取得しているものを「取得」する必要があることを検証する必要があります。

最初にそのスコアを計算している実行中のコードは、UPDATE コードがある場所にある必要があります...サーバーを離れることはありません。

于 2012-12-27T20:49:51.583 に答える