将多个变量发送到PHP

时间:2011-08-15 13:30:33

标签: php javascript jquery ajax json

我在HTML页面中有以下jQuery增强的Javascript:

<script>
     $(document).ready(function(){           
        $("#sb").click(function(e){
            e.preventDefault();
            getusername = "Yes";
            getpassword = "Yes";
            getusername = encodeURIComponent(getusername);//url encodes data
            getpassword = encodeURIComponent(getpassword);//url encodes data
            $.ajax({
               type: "POST",
               url: "get_login.php",
               data: {'username': getusername, 'password':getpassword},
               dataType: "json",
               success: function(data) {
                  $("#message_ajax").html("<div class='successMessage'>" + data.message +"</div>");
           }
            });
        });
    });
</script>

我的php如下:

if(isset($_POST['username']) && isset($_POST['password'])){
    echo json_encode(array('message' => 'Tester'));
}

然而,该脚本无效。我认为这与我从浏览器发布数据的方式有关。也许我错误地设置了用户名和密码,并且它在isset语句中失败了?

目前,该页面什么也没做。按钮单击事件处理程序正在触发...但我的HTML页面中的message_ajax div没有正确响应更新...

2 个答案:

答案 0 :(得分:0)

更改行

  $("#message_ajax").html("<div class='successMessage'>" + data.message +"</div>");

  $("#message_ajax").html("<div class='successMessage'>" + data.message +"</div>");

并尝试!!!

答案 1 :(得分:0)

你需要更改mime标题...你的ajax期望json作为响应,所以你需要设置正确的标题。

header('Content-type: application/json');

http://docs.jquery.com/Specifying_the_Data_Type_for_AJAX_Requests