0

ページを更新せずに Ajax を使用して Mysql データベースにデータを送信すると問題が発生します。

誰かが私が間違っているかもしれない場所を指摘できますか? スクリプトの AJAX on success 部分にアラートを配置して、alert('it worked');何が起こったかを確認しました。また、「動作します」を返します。

(参照しやすいようにスクリプトの検証部分を削除しましたが、あります。)

また、変数 dataString から返された値も確認しました。

email =a3&pass=a

PHPページに値を送信しない理由がわかりません。

//START THE FUNCTION FOR THE SUBMISSION OF THE LOGIN FORM VIA AJAX 

$('form[name=loginForm]').submit(function(e) { 
    e.preventDefault();

    var email = $("#email").val();
    var password = $("#pass").val();

    var dataString = 'email =' + email + '&pass=' + password;

    //the html below is just used to test the values that are derived from the dataStirng. 
    $('#showerror').html( dataString  );

    $.ajax({
        type: "POST",
        url: "cms/index.php?view=login",
        data: dataString,
        success: function() {
            alert('it worked');
            //document.newMessage.newMessageContent.value = "";
        }
    });     
});  
//END THE FUNCTION FOR THE SUBMISSION OF THE LOGIN FORM VIA AJAX  
4

1 に答える 1

0

次のようなデータを送信します。

{'email': email, 'pass': password}

また

var dataString = 'email =' + email + '&pass=' + password;
                       ^--- remove this space

そうなる

var dataString = 'email=' + email + '&pass=' + password;

Spaceクエリ文字列内では使用できません。こちらのURL エンコーディングの見出しを参照してください。

于 2012-09-15T07:18:13.837 に答える