2009-08-18 17 views
0

私は、blurイベントを使用してmysqlへの更新をトリガする複雑なフォームを持っています。すべての必須フィールドが完了するまで、送信ボタンを無効にする検証があります。問題は、ユーザーがすべてのフィールドを完了していなくても、フォームを送信することを管理していることです。JQuery +フォームフィールドがデータベースに100%正しく挿入されない

私の理論では、何らかの理由でデータベースからフォームから送信された値の一部が無視されていますが、検証ではすべてのフィールドが完了したと認識されています。

私が知る限り、Internet Explorer 6が原因です。現代的なブラウザ(Firefox、Chrome、Safari、IE7 + 8)でうまく動作しますが、6になっています。

ユーザがいなくても値がデータベースに送られない可能性がありますあたかも更新が成功したかのようにフィールドの隣に「チェック」マークが表示されます。

データベースの更新が何らかの形で遅れるべきですか?これを引き起こしているIE6に欠陥がありますか?

どのような提案も大歓迎です!

+1

jqueryを投稿 – Jason

+1

JSの検証を信用し、サーバー側の検証も実装しないでください。 JSの検証が追加することができます、サーバー側が持っている必要があります。 – RaYell

+0

いくつかのHTMLとjavascriptを投稿できますか? IE6はjavascriptをオフにして同じように動作しますか?サーバー側でも検証していますか? [Fiddler](http://www.fiddler2.com/fiddler2/)をセットアップして、送信されている内容を確認しましたか? –

答えて

1

ここでは、Server-sde検証が確かに有効です。これは、クライアント側のコードを追加することでユーザーエクスペリエンスを "強化"する前に書かなければならない最初のものです。

その問題はすべてのサンプル・コードなしであるかもしれないものを言うが、私はいくつかの質問を持っていることは困難:

あなたのボタンが無効になり始めるん、すなわち属性は、あなたのHTMLに埋め込ま=「無効」無効になっていますか?

ユーザーがすべてのフィールドを入力すると、ボタンが有効になります。彼らがフィールドの1つをクリアすると、再び無効になっていますか?

"現代"のブラウザでは認識されますがIE6では認識されないJavaScript(またはCSS)を使用している可能性はありますか?

あなた自身で具体的に複製できましたか?

送信時にフォームフィールドを検証しますか?あなたのフィールドはSQLインジェクションに脆弱である可能性はありますか?

+0

1.ボタンが無効になって最初から 2.はい 3.それは 4ですべてのエラーを再現することができていないいいえ、ケースである可能性があります。 5.すべてのフィールドは、完了時および提出時に検証されます。 SQLインジェクションから守るために、さまざまなルーチンが用意されています。 – Choog

関連する問題