ユーザー登録やその他の状況に遭遇したときに、ユーザーがすべての情報を入力するのを待って、登録ボタンをクリックして送信し、入力が正しいかどうかを確認すると、エクスペリエンスが非常に悪くなり、ユーザーの時間の無駄になります。これは例とデモです。 thinkphp 3.2 フレームワーク、環境 WAMPServer 2.4、バージョン PHP 5.4.16+ Apache 2.4.4+ MySql 5.6.12 を使用して、シングル ステップ検証に ajax を使用する方法です。
1. データベース設計:
データベース名 thinkphp
テーブル名 tp_user (tp_ は config.php で定義できるテーブルのプレフィックス) テーブルを操作するときは、user
を使用するだけです。
リーリー
2. ページデザイン
3.HTML部分
ビュー/インデックス/index.html
リーリー
4. thinkphp 自動検証
リーリー
5. ajaxを使用する
ユーザーがユーザー名を入力した後、入力ボックスがフォーカスを失ったときにブラーイベントがトリガーされます。この時点でユーザー名の入力が正しいかどうかを確認できます。
jQuery.post( url, [data], [callback], [type] ): POST メソッドを使用して非同期リクエストを作成します
パラメータ:
url (文字列): リクエストを送信する URL アドレス。
リーリー
パスワード、繰り返しパスワード、メール認証は類似しています
メールを認証する際に注意が必要なのは、ユーザーがメールを入力した直後に登録ボタンをクリックした場合、登録ボタンのクリックイベントとメール入力ボックスのぼかしイベントが同時に実行されるためです。メール検証は $.post であり、投稿はまだ完了していません。 click イベントでは、error['email']=1 では $('#submit1').submit(); が実行されません。今回は、フラグ error['submit'] = 0 を設定します。0 は [登録] ボタンのクリックを意味します。デフォルトは 1 です。電子メール ブラー コールバック関数で、error['submit'] が 0 に等しいかどうかを判断します。クリックされたかどうかを確認します。クリックされていない場合は、メールを確認するだけで済みます。
ユーザーがメール アドレスを入力し、画面上の別の場所でマウスをクリックすると、ユーザー名とパスワードと同じようにぼかしのみが実行されます。
6. サーバー処理
リーリー
上記はユーザー名を一段階認証する方法です。すべてのデータをサーバーに送信する方法を見てみましょう。
7. すべてのデータをサーバーに送信します
上記の HTML コードを通じて、ここでフォームが使用されていること、フォームが投稿モードで送信されていること、アクションがサーバーが処理できるアドレスを指していることがわかりました
登録ボタンをクリックしたら、すべての入力が正しいかどうかを確認し、正しい場合はフォームを送信します
リーリー
リーリー
リーリー
http://www.bkjia.com/PHPjc/929774.html