mysql - PHP ループで繰り返しエントリの問題が常に発生する
PHP中文网
PHP中文网 2017-05-24 11:30:40
0
4
587

ユーザー情報を配列に格納し、ループを使用して mysql データベースに入力します。ただし、場合によっては、個々のユーザーの情報が 2 回入力されることがあります。論理エラーがどこにあるのかわかりません。いくつか教えてください。アドバイス:
ロジックコードは次のとおりです

リーリー

現時点で奇妙なのは、個々のユーザーが入力した情報が常に 2 回実行されることです (たとえば、送信された配列には 5 つの要素しかありませんが、データベースへのエントリによって 10 個のレコードが生成されます)

エントリの 90% は正常です。これを行うのは一部のユーザーだけです。ガイダンスを提供してください。

PHP中文网
PHP中文网

认证高级PHP讲师

全員に返信(4)
给我你的怀抱

これは、location.href を使用してジャンプすると発生します。一部のブラウザでは、更新されるとすぐにフォームが再送信される場合があります。いくつかの例を示します。

    ajax 更新なし
  1. フロントエンドが送信すると、バックエンドはトークンを生成し、それをセッションに保存します。バックエンドに送信すると、2 つのトークンが比較されます。
  2. 検証用データベース

  3. バックエンドは 301 または 302 を使用してジャンプします

いいねを押す +0
巴扎黑

論理的には特別な問題は見当たりません。フロントエンドが 2 つのリクエストを送信した可能性があるとしか言えません。一般的に、データを挿入するときに、ユーザーがデータベースに存在するかどうかが判断されますが、実際には存在していました。この判断をしなかったことが、10 個のレコード

を表示させる原因にもなりました。
いいねを押す +0
为情所困

あなたが考えるべきことは次のとおりです:

リーリー
いいねを押す +0
phpcn_u1582

挿入する前に、少なくとも一意のインデックスを使用してデータベースの値を判断します。

個別の入力エラーの場合は、$data 内のデータによって異なります。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート