javascript向php发送单向消息

时间:2010-06-15 15:37:04

标签: php javascript

如何使用javascript向php发送单向消息?我想从javascript获取浏览器信息,并将其发送到后台的PHP。我知道我可以从php获得一些,但我宁愿使用javascript。如果没有像jquery这样的框架,有没有办法做到这一点?

4 个答案:

答案 0 :(得分:0)

您必须向PHP脚本提交AJAX请求。是的,您可以在不使用框架的情况下完成,但我不会建议。

答案 1 :(得分:0)

您需要对PHP页面进行AJAX调用,最好使用POST。您要发送的任何数据都需要与请求一起发送。

我建议使用jQuery等框架,但如果您坚持使用原始JavaScript,则需要研究XMLHttpRequest

答案 2 :(得分:0)

是的,你可以这样做:

function xmlhttpPost(strURL) {
    var xmlHttpReq = false;
    var self = this;
    // Mozilla/Safari

    if (window.XMLHttpRequest) {
        self.xmlHttpReq = new XMLHttpRequest();
    } else if (window.ActiveXObject) {
       // IE
       self.xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
    }

    self.xmlHttpReq.open('POST', strURL, true);
    self.xmlHttpReq.onreadystatechange = function() {

        if (self.xmlHttpReq.readyState == 4) {
            alert('Here goes something');
            self.xmlHttpReq.send('browser info here');
        }
    }
} 

这将在您传递给url函数的php页面中将“浏览器信息”发送为POST。我没试过它

答案 3 :(得分:0)

// fix for older IE versions
// see http://blogs.msdn.com/b/xmlteam/archive/2006/10/23/using-the-right-version-of-msxml-in-internet-explorer.aspx
if( typeof window.XMLHttpRequest === 'undefined' &&
    typeof window.ActiveXObject === 'function') {
    window.XMLHttpRequest = function() {
        try { return new ActiveXObject('Msxml2.XMLHTTP.6.0'); } catch(e) {}
        try { return new ActiveXObject('Msxml2.XMLHTTP.3.0'); } catch(e) {}
        return new ActiveXObject('Microsoft.XMLHTTP');
    };
}

function postData(url, data, errhandler) {
    var req = new XMLHttpRequest;
    req.onreadystatechange = function() {
        if(this.readyState === 4 && this.status !== 200 && errhandler)
            errhandler(this);
    };
    try {
        req.open('POST', url, true); // async post request
        req.send(data);
    }
    catch(e) {
        if(errhandler)
            errhandler(req);
    }
}