0

コードのあるページがあります...

<script language="JavaScript"> 
 var link = "<img src='http://www.mysite.com/file.php?var1=firstName&var2=lastName&var3=phone'>"; 
 document.write(link); 
</script>

そして、「file.php」がこれらの変数を取得しています...

$firstName = $_GET['var1'];
$lastName = $_GET['var2'];
$phone = $_GET['var3'];

問題は... ページの更新をより安全にしたいです。これらの変数がデータベースに追加されるためです。また、JavaScript からのリンクでブラウザの [更新] をクリックすると、2 回追加されます。私は、「POST」を使用する最良の方法だと思います。それを正しく行う方法は?

4

1 に答える 1

0

この問題のためにコードを設定する方法です。私が考えることができる最善の「解決策」は、リロード時のキャッチです。

window.onbeforeunload = function() {
   return 'Please do not refresh this page';
}

それ以外の唯一の「安全な」方法は、変数を設定して情報がサーバーに既に送信されているかどうかを確認するか、サーバー側でブロックを設定して複数の書き込みを防ぐことです。

編集に対処するには:

AJAX 経由での提出について考えたいと思うかもしれません。ハンドラーに送信して、応答を返すことができます。次に、それを保存して(localStorageまたはCookies)、再度送信されないようにすることができます。

于 2012-10-11T15:38:03.623 に答える