1

phpでajaxformプラグインを使用しようとしています。目標を達成できなかったので助けてください。

1-ユーザーがこのフォームに入力します((ユーザーに画像をアップロードしてもらいたいのですが、コーディングに最善を尽くしましたが、結果があまりないため、input type = "file"を削除しました。これを処理する方法がわかっている場合は、 ajaxformとphpは私のフォームを編集してください))

  < form name="signup" autocomplete="on" id="signup_form" method="get" action="signup_feed.php">
<fieldset>
<legend>Sign Up</legend>
<label class="span-4" >First Name*:</label> <input type="text" id="u_fname" name="u_fname"/><br/>
<label class="span-4">Last Name*:</label><input type="text" id="u_lname" name="u_lname"/><br/>
<label class="span-4">Email*:</label><input type="email" id="u_email" name="u_email"/><br/>
<label class="span-4">Password*:</label><input type="password" id="u_pass" name="u_pass"/></br>
<label class="span-4">Re-type Password*:</label><input type="password" name="u_re_pass"/></br>
<label class="span-4">Phone no.:</label><input type="tel" id="u_phone" name="u_phone" /><br/>

<input type="submit"  value="Sign up" class="button" id="sign_up_btn"/>
</fieldset>
</form>

2- ajaxformを使用して上記のフォームの値を送信します。その後、sign_in.phpページにリダイレクトするためのカウントダウンが5秒あります。

    var options = {

target:'#sign_up_div',
success: function(){
$('#sign_up_div').replaceWith("<div id='signup_success_msg' class='success'></div>");  
        $('#signup_success_msg').html("<h3>You have registered ! </h3>")  
        .hide()  
        .fadeIn(1500, function() {  
          $('#signup_success_msg').append("<img id='checkmark' src='img/icon-check.png' />"); 

        });  
        $('#signup_success_msg').append('<p>please sign up</p>').delay( 2500 ).fadeOut(1500, function() { $(this).remove(); });

},
url:signup_feed.php,
type:post

};

 $('#signup_form').submit(function() { 
        // inside event callbacks 'this' is the DOM element so we first 
        // wrap it in a jQuery object and then invoke ajaxSubmit 
        $(this).ajaxSubmit(options); 

        // !!! Important !!! 
        // always return false to prevent standard browser submit and page navigation 
        return false; 
    }); 

3-phpはredbeansphp を使用してデータを保存します

$user = R::dispense( 'user' );
        $user->u_fname=$_GET['u_fname'];
        $user->u_lname=$_GET['u_lname'];
        $user->u_email=$_GET['u_email'];
        $user->u_pass=$_GET['u_pass'];
        $user->u_phone=$_GET['u_phone'];

        $id = R::store($user);

        echo "<p> Thank you for resigteration! Please sign in  </p><p id='countdown'></p> 
        <p>if you still see this page , please <label><a href='sign_in.php'>click here</a></label> </p>";

私はまだJqueryを初めて使用しますが、フォームでこれらの目標を達成したいと思っています。

4

2 に答える 2

0

追加できます:setTimeout(function() { location.href = "TARGET_URL"; }, 5000;内部success: function() { }

于 2012-09-27T06:01:41.997 に答える
0
$('form[name="formName"]').ajaxForm({
    success : function (response) {

        alert("submitted");
    }
}).submit()  

これは私のプロジェクトでajaxformとして機能しています。これを試して。

于 2012-09-27T06:15:58.150 に答える