如何将AJAX变量传递给PHP

时间:2014-01-13 16:40:55

标签: javascript php jquery ajax

我知道我不能直接将AJAX Vars传递给PHP,而是客户端与服务器端脚本。但话虽如此,这是我的代码:

setInterval(function()
{   
    //do something after you receive the result
    var xmlhttp;
    if (window.XMLHttpRequest)
    {// code for IE7+, Firefox, Chrome, Opera, Safari
    xmlhttp=new XMLHttpRequest();
    }
    else
    {// code for IE6, IE5
        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
    xmlhttp.onreadystatechange=function()
    {
        if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
        document.getElementById("message_area").innerHTML=xmlhttp.responseText;
    }
    }
    xmlhttp.open("GET","messages.txt",true);
    xmlhttp.send();
}

我知道我可以通过使用AJAX将它们发布到PHP页面来间接处理AJAX变量,如下所示:

$.ajax (
{
    type: "POST",
    url: "decode.php",
}); 

我只需要知道如何将xmthttp.open调用中使用的“messages.txt”文件的内容传递给PHP文件,以便进一步处理。

我该怎么做?

3 个答案:

答案 0 :(得分:2)

如果您使用纯javascript:

var url = "get_data.php";
var params = "lorem=ipsum&name=binny";
http.open("POST", url, true);

//Send the proper header information along with the request
http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
http.setRequestHeader("Content-length", params.length);
http.setRequestHeader("Connection", "close");

http.onreadystatechange = function() {//Call a function when the state changes.
    if(http.readyState == 4 && http.status == 200) {
        alert(http.responseText);
    }
}
http.send(params);

或者如果您使用的是jquery,只需:

$.ajax (
{
    type: "POST",
    url: "decode.php",
    params: {param1: "val1", param2: "val2"}
}); 

答案 1 :(得分:1)

你在使用jquery吗?你的第一个代码块是常规的js,第二个是jQuery的ajax短手。

也就是说,如果你想使用jQuery使用ajax POST数据,你会做类似下面的事情。

var PostData = "something";

$.ajax({
    type: "POST", 
    url: "someurl", 
    data: PostData
}).done(function(returnData) {
    //process data returned from server, if there is any
});

答案 2 :(得分:1)

希望这会有所帮助:

$.get( "messages.txt", function( data ) { //Fetching contents of messages.txt file.
    $.ajax ({
        type: "POST",
        url: "decode.php",
        data: data, //passing contents of messages.txt file to decode.php
        success: function(result){
              alert(result);//Getting result from decode.php
        }
    }); 
});

欢呼声