• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

PHP与JavaScript间的数据传递

php 搞代码 4年前 (2022-01-04) 32次浏览 已收录 0个评论

在Web开发中,PHP与JavaScript之间的通信是经常需要做的事。下面是一个例子。

JavaScript端:

一定要设置xmlHttp.setRequestHeader,否则传往PHP的参数会变成null(line 43)。第36行是亮点。

<script type="text/javascript">function GetJson() {    var xmlHttp;    try    {        // Firefox, Opera 8.0+, Safari        xmlHttp = new XMLHttpRequest();    }    catch (e)     {        // Internet Explorer        try {            xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");        }        catch (e)         {            try {                xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");            }            catch (e) {                alert("您的浏览器不支持AJAX!");                    return false;            }        }    }         xmlHttp.onreadystatechange = function()     {        if (xmlHttp.readyState == 4)         {            //alert(xmlHttp.responseText);            var str = xmlHttp.responseText;            document.getElementById('show').innerHTML +=str;            //alert(str);            var obj = eval('('+ xmlHttp.responseText +')');            //var obj = eval(({"id":"123","name":"elar","age":"21"}));            alert(obj.name);        }    }    var data = "id=123";    xmlHttp.open("POST", "tes<i style="color:transparent">来源gaodai$ma#com搞$$代**码网</i>tJson.php", true);    xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");     xmlHttp.send("id=123");}</script><input type="button" onclick="GetJson()" value="按我!"/><hr /><div id="show"></div>

PHP端【testJson.php】:

注意,php文件要干净,<?php ?>标签的外部不能有其他标签,否则eval函数无法解析。

<?php $res['id'] = $_POST['id'];$res['name'] = "elar";$res['age'] = "21";$response = "hello this is response".$_POST['id'];echo json_encode($res);?>

总结:

js要往PHP端送数据,用的是xmlHttp.send("id=123");

PHP给js送数据,用的是echo json_encode($res);(要注意变量$res的构造应符合JSON的规范)

js要解析PHP送来的JSON格式的数据,用var obj = eval('('+ xmlHttp.responseText +')');


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:PHP与JavaScript间的数据传递

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址