0

登録ページがあります

<form class="register" action="regist.php" method="post" >
                    <h3>Register</h3>
                    <div class="column">
                        <div>
                            <label>First Name:</label>
                            <input type="text" name="f_name"/>
                            <span ></span>
                        </div>
                        <div>
                            <label>Last Name:</label>
                            <input type="text" name="l_name"/>
                            <span class="error">This is an error</span>
                        </div>
                        <div>
                            <label>mobile:</label>
                            <input type="text" name="mobile"/>
                            <span class="error">This is an error</span>
                        </div>
                    </div>
                    <div class="column">
                        <div>
                            <label>Username:</label>
                            <input type="text"name="user"/>
                            <span >This is an error</span>
                        </div>
                        <div>
                            <label>Email:</label>
                            <input type="text" name="email"/>
                            <span class="error">This is an error</span>
                        </div>
                        <div>
                            <label>Password:</label>
                            <input type="password" name="pass"/>
                            <span class="error">This is an error</span>
                        </div>
                    </div>
                    <div class="bottom">
                        <div class="remember">

                        </div>
                        <input type="submit" value="Register" name="submet" />
                        <a href="index.html" rel="login" class="linkform">You have an account already? Log in here</a>
                        <div class="clear"></div>
                    </div>
                </form>

jquery bpopup を使用する

   $(function() {

        // Binding a click event
        // From jQuery v.1.7.0 use .on() instead of .bind()
        $('#my-button').bind('click', function(e) {

            // Prevents the default action to be triggered. 
            e.preventDefault();

            // Triggering bPopup when click event is fired
            $('#element_to_pop_up').bPopup();

        });

    }

そのため、登録をクリックしてフォームをポップアップすると、すべてが正常に機能します。問題は、フォームに入力した後に登録をクリックするとポップアップが消えるため、フォームの検証を行うことができないため、同じフォームで検証を行うことができないことです。

1 エラーを表示する別のポップアップを作成しようとしましたが、データが新しいポップアップに渡されません 2 アクションを作成するために、$_SERVER['self_request'] 誰かがこれを手伝ってくれませんか。

必要なのは、フォームを MySQL スクリプトに送信する前に、同じページまたは別のポップアップでフォームを検証することです

4

1 に答える 1

0

GET 関数を使用して情報を取得する php ページ (ここでは validation.php と呼びます) を作成します...

次に、入力フィールドにいくつかの ID を設定します...

そして、次のような関数を作成します。

function checkAll(){
    var firstName = document.getElementById("f_name").value();
    var lastName = document.getElementById("l_name").value();
    $.get( "validation.php?f_name=" + firstName + "&l_name=" + lastName, function( response ) {
        // console.log( response ); // server response
        response = response.trim();
        if(response == 1){
            alert("Everything is alright");
        } else{
            alert(response);
            return false;
        }
    });
}

フォームを次のように変更します。

<form class="register" action="regist.php" method="post" onSubmit="checkAll();">

ここで重要なのは、validation.php で、すべてが正常に機能する場合は値 1 をエコーすることができ、何かがうまくいかない場合はエラー コード (または任意のコード) をエコーし​​、次に switch 句を使用して動的に追加できることです。あなたのフォームにエラーがあります)。

これreturn falseにより、フォームの送信が妨げられます...

于 2013-04-24T05:47:10.553 に答える