- - PR -
Servletで2重登録防止
1
| 投稿者 | 投稿内容 | ||||
|---|---|---|---|---|---|
|
投稿日時: 2004-05-20 15:43
僕はjavaとjspでバーチャルモールの研究を行っていますが
最近になって送信フォームでの2重登録の防止の設定という問題が 発生しました。Java Scriptの方で対応したいと考えていますが どのように対応したらよいのでしょう? (例えば、商品購入画面で送信ボタンをユーザーが1度押し変化がないので2回目 もボタンを押してしまいました。その場合に2つ商品を購入してしまうといった 問題です。) 知っている方がいたらぜひお教えねがいないでしょうか。 お願いします。 また、こちらのサイトの方で参考になるページを見つけはしました。ですが そのソースで正しいかどうかといったことがよくわかりません。 下にそのソースを載せたいと思います。 **参考コード ---------------------------------------------------------------- 送信ボタンのonClickで最初のクリックか2回目以降か調べられます。 下記のコードがサンプルです。 コード: -------------------------------------------------------------------------------- ・・・ <SCRIPT type="text/javascript"> <!-- var isFristTime = true; function processSubmit() { if(!isFristTime) { return; } else { firsttime = true; window.document.forms["FORM"].action = "http://...."; window.document.forms["FORM"].submit(); } } // --> </SCRIPT> ・・・ <BODY> <FORM name="FORM" method="post"> T1:<input type="text" name="T1"><BR> T2:<input type="text" name="T2"><BR> <input type="button" value="submit" onclick="processSubmit()"> </FORM> </BODY> ・・・ | ||||
|
投稿日時: 2004-05-20 16:04
firsttime = true;
は、 isFristTime = false; じゃないでしょうか。 | ||||
|
投稿日時: 2004-05-20 16:26
失礼しました。
firsttime = true;は firsttime = false;と書いてありました。 isfirstTime = false; とisが必要になるのですね。 参考になりました。 このコードは有名なのでしょうか? | ||||
|
投稿日時: 2004-05-20 19:31
コードはともかく、抱えられてる課題はとても頻繁にある課題です。 解決方法もいくつかありますし、この例はその一つです。 ところで、Javascriptで対処する方法は、送信後の画面でリロードされた場合(IEだと「F5」を押された場合)に対応できないんですが、その辺りの対策は大丈夫ですか? | ||||
|
投稿日時: 2004-05-20 19:54
Clusterさんのおっしゃる「送信後の画面でリロードされた場合の対策」
の方は現時点で私の知識が足りないことからそれもまたカバーできていない 問題であります。 ま | ||||
|
投稿日時: 2004-05-20 19:57
失礼しました。
Clusterさんのおっしゃる「送信後の画面でリロードされた場合の対策」 の方は現時点で私の知識が足りないことからそれもまたカバーできていない 問題であります。 また、この問題は頻繁にあるということは私も聞いたことがあり ます。解決方法がいくつかあるといったことは今始めて知りました。 | ||||
1
