设为首页 加入收藏 网站搜索 繁體中文 中国建站网 — 站长资源分享平台

ajax的server部分(php版)

来源:网络收集 作者:佚名 时间:2007-07-07 13:41:23

Server端的任务通常是根据Client的请求,进行逻辑操作,并将结果响应返回。这个响应通常为XML格式(因此server端需要使用PHP的DOM创建XML响应)

1.PHP使用DOM创建XML响应,供client端的JS解析然后在页面中显示;(因此需要熟练PHP的DOM API)
其实,PHP生成XML的方法有两种:
使用DOM API;(方法一)
另一种是直接将XML的内容echo出去即可;(方法二)
见示例:
HTML页面(包含三个JS触发函数:onmouseover, onmouseout, onclick; 分别触发自己的函数)
<!doctype html public "-//w3c//dtd html 4.0 tRANSITIONAL//en">
<html>
<head>
<title> Server PHP Ajax </title>
<script type="text/javascript" src="js.js"></script>
</head>

<body>
<span >Default Words</span>
<div id="show"></div>
divide<input type="text" id="firstNumber"/>by
<input type="text" id="secondNumber"/>
<input type="button" value="Send" />
<div id="result"></div>
</body>
</html>
JS页面(分别定义三个JS触发函数:PHPechoXML, PHPDOMXML, 以及CSparameter)
其中有XMLHttpRequest对象创建函数,以及各自的Server响应处理函数
///////1. 创建XMLHttpRequest对象
var xmlHttp = createXmlHttpRequestObject();

function createXmlHttpRequestObject()
...{
  var xmlHttp;

  try
  ...{
    // try to create XMLHttpRequest object
    xmlHttp = new XMLHttpRequest();
  }
  catch(e)
  ...{
    // assume IE6 or older
    var XmlHttpVersions = new Array('MSXML2.XMLHTTP.6.0',
                                    'MSXML2.XMLHTTP.5.0',
                                    'MSXML2.XMLHTTP.4.0',
                                    'MSXML2.XMLHTTP.3.0',
                                    'MSXML2.XMLHTTP',
                                    'Microsoft.XMLHTTP');
    for (var i=0; i<XmlHttpVersions.length && !xmlHttp; i++)
    ...{
      try
 
      ...{
        // try to create XMLHttpRequest object
        xmlHttp = new ActiveXObject(XmlHttpVersions[i]);
      }
      catch (e) ...{}
    }
  }
  if (!xmlHttp)
    alert("Error creating the XMLHttpRequest object.");
  else
    return xmlHttp;
}


///////2. JavaScript事件响应函数(onmouseover触发)
// read a file from the server
function PHPechoXML()
...{
  // only continue if xmlHttp isn't void
  if (xmlHttp)
  ...{
    // try to connect to the server
    try
    ...{
      // initiate reading a file from the server
      //向Server端的PHPechoXML.php文件发送异步请求
      xmlHttp.open("GET", "PHPechoXML.php", true);
      xmlHttp.onreadystatechange = handleRequestStateChange;
      xmlHttp.send(null);
    }
    // display the error in case of failure
    catch (e)
    ...{
      alert("Can't connect to server: " + e.toString());
    }
  }
}

///////3. JavaScript事件响应函数(onmouseout触发)
function PHPDOMXML()
...{
  // only continue if xmlHttp isn't void
  if (xmlHttp)
  ...{
    // try to connect to the server
    try
    ...{
      // initiate reading a file from the server
      //向Server端的PHPDOMXML.php文件发送异步请求
      xmlHttp.open("GET", "PHPDOMXML.php", true);
      xmlHttp.onreadystatechange = handleRequestStateChange;

[1] [2] [3] [4] [5] [6] [7] [8]  下一页

Tags:

  • 好的评价 如果您觉得好,就请您
      0%(0)
  • 差的评价 如果您觉得差,就请您
      0%(0)
  • 相关文章
    广告赞助

    文章随便看看 设计素材 建站学院 网页模板 视频教程

    网友评论

    共有 0 位网友发表了评论,得分 0 分,平均 0 分    查看完整评论

    用户名: 查看更多评论

    分 值:100分 85分 70分 55分 40分 25分 10分 1分

    内 容:

             通知管理员 验证码: