js代码:
var xmlHttp=createXmlHttpRequestObject(); //get xmlHttpRequest object function createXmlHttpRequestObject(){ var xmlHttp; if(window.ActiveXObject){ try{ xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); } catch(e){ xmlHttp=false; } }else{ try{ xmlHttp=new XMLHttpRequest(); } catch(e){ xmlHttp=false; } } if(!xmlHttp){ }else{ return xmlHttp; } } function process(){ if(xmlHttp.readyState==4||xmlHttp.readyState==0){ name=document.getElementById("myName").value; xmlHttp.open("GET","quickstart.php?name="+name,true); xmlHttp. xmlHttp.send(null); }else{ setTimeout('process()',1000); } } function handleServerResponse(){ if(xmlHttp.readyState==4){ if(xmlHttp.status==200){ xmlResp xmlDocumentElement=xmlResponse.documentElement; helloMessage=xmlDocumentElement.firstChild.data; document.getElementById('divMessage').innerHTML='<i>'+helloMessage+'</i>'; setTimeout('process()',1000); }else{ alert('There was a problem accessing hte server:'+xmlHttp.statusText); } } }
php代码:
遇到了 一个
<pre name="code" class="plain">Warning: Cannot modify header information - headers already sent by....
解决方法:
修改php.ini文件,
我用的是阿里的服务器所以
启用如下如的功能就可以了。
<img src="http://img.blog.csdn.net/20160319103516024?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
<pre name="code" class="php"><?php header('Content-Type:text/xml'); echo '<?xml version="1.0" encoding="UTF-8" standal echo'<response>'; $name=$_GET['name']; $userNames=array('WangWei','ZhouJianfei','MeiShibo','QuXinglin','WangYuming','LiaoGuihong','WangChenggao','ZhouQian'); if(in_array($name,$userNames)){ echo'Hello,master'.htmlentities($name).'!'; }else if(trim($name)==''){ echo'Stranger,please tell me your name!'; }else{ echo htmlentities($name).',I don\'t know you!'; } echo''; ?>
<pre name="code" class="php">方法简介:
in_array($name,$userNames):遍历uername数组中的元素,并每次赋值给name
strtoupper($str);将该str转换为大写。
<pre name="code" class="php">htmlentities($name):替换代码中不同字符的编码(eg:&,>等),以防止出错。
以上就介绍了Ajax与PHP,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。