本文实例讲述了原生js实现ajax通过post方式与php进行交互的方法。分享给大家供大家参考,具体如下:
一、代码
conn.php
<?php
$conn=mysql_connect("localhost","root","root") or die("数据库连接失败".mysql_error());
mysql_select_db("db_database27",$conn) or die("数据库连接失败".mysql_error());
mysql_query("set names gb2312");
?>
index.php
<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=gb2312" />
<title>通过post方式与php进行交互</title>
<style type="text/css">
<!--
body {
margin-left: 0px;
margin-top: 00px;
margin-right: 0px;
margin-bottom: 0px;
}
-->
</style></head>
<script>
var xmlhttp; //定义xmlhttprequest对象
function createxmlhttprequestobject(){
if(window.activexobject){ //如果在internet explorer下运行
try{
xmlhttp=new activexobject("microsoft.xmlhttp");
}catch(e){
xmlhttp=false;
}
}else{
try{ //如果在mozilla或其他的浏览器下运行
xmlhttp=new xmlhttprequest();
}catch(e){
xmlhttp=false;
}
}
if(!xmlhttp) //返回创建的对象或显示错误信息
alert("返回创建的对象或显示错误信息");
else
return xmlhttp;
}
function showsimple(){ //创建主控制函数
createxmlhttprequestobject();
var us = document.getelementbyid("user").value; //获取表单提交的值
var nu = document.getelementbyid("number").value;
var ex = document.getelementbyid("explains").value;
if(us=="" && nu=="" && ex==""){ //判断表单提交的值不能为空
alert('添加的数据不能为空!');
return false;
}
var post_method="users="+us+"&numbers="+nu+"&explaines="+ex; //构造url参数
xmlhttp.open("post","searchrst.php",true); //调用指定的添加文件
xmlhttp.setrequestheader("content-type","application/x-www-form-urlencoded;"); //设置请求头信息
xmlhttp.onreadystatechange=stathandler; //判断url调用的状态值并处理
xmlhttp.send(post_method); //将数据发送给服务器
}
function stathandler(){ //定义处理函数
if(xmlhttp.readystate==4 && xmlhttp.status==200){ //判断如果执行成功,则输出下面内容
if(xmlhttp.responsetext!=""){
alert("数据添加成功!");
//将服务器返回的数据定义到div中
document.getelementbyid("webpage").innerhtml=xmlhttp.responsetext;
}else{
alert("添加失败!"); //如果返回值为空
}
}
}
</script>
<body>
<table width="800" height="632" border="0" align="center" cellpadding="0" cellspacing="0" background="images/bj.jpg">
<tr>
<td width="260" height="245"> </td>
<td colspan="2" align="center" valign="bottom"><strong>查询员工信息,根据员工技能信息</strong></td>
<td width="40"> </td>
</tr><form id="searchform" name="searchform" method="post" action="#">
<tr>
<td height="25"> </td>
<td width="150" align="right">员工姓名: </td>
<td width="350" align="left"><input name="user" type="text" id="user" size="30" /></td>
<td> </td>
</tr>
<tr>
<td height="25"> </td>
<td align="right">员工编号: </td>
<td align="left"><input name="number" type="text" id="number" size="20" /></td>
<td> </td>
</tr>
<tr>
<td height="25"> </td>
<td align="right">技能描述: </td>
<td align="left"><textarea name="explains" cols="40" rows="3" id="explains"></textarea></td>
<td> </td>
</tr>
<tr>
<td height="25"> </td>
<td colspan="2" align="center">
<input type="button" name="submit" value="提交" onclick="showsimple();" />
<input type="reset" name="submit2" value="重置" /></td>
<td> </td>
</tr> </form>
<tr>
<td height="268"> </td>
<td colspan="2" align="center" valign="top"><div id="webpage"></div></td>
<td> </td>
</tr>
<tr>
<td> </td>
<td colspan="2"> </td>
<td> </td>
</tr>
</table>
</body>
</html>
searchrst.php
<?php
header('content-type: text/html;charset=gb2312'); //指定发送数据的编码格式
include_once 'conn/conn.php'; //连接数据库
$user =iconv('utf-8','gb2312',$_post['users']); //获取ajax传递的值,并实现字符编码转换
$number = iconv('utf-8','gb2312',$_post['numbers']); //获取ajax传递的值,并实现字符编码转换
$explains = iconv('utf-8','gb2312',$_post['explaines']); //获取ajax传递的值,并实现字符编码转换
$sql="insert into tb_administrator(user,number,explains)values('$user','$number','$explains')";
$result=mysql_query($sql,$conn); //执行添加语句
if($result){
$sqles="select * from tb_administrator ";
$results=mysql_query($sqles,$conn);
echo "<table width='500' border='1' cellpadding='1' cellspacing='1' bordercolor='#ffffcc' bgcolor='#666666'>";
echo "<tr><td height='30' align='center' bgcolor='#ffffff'>id</td><td align='center' bgcolor='#ffffff'>名称</td><td align='center' bgcolor='#ffffff'>编号</td><td align='center' bgcolor='#ffffff'>描述</td></tr>";
while($myrow=mysql_fetch_array($results)){ //循环输出查询结果
echo "<tr><td height='22' bgcolor='#ffffff'>".$myrow[id]."</td>";
echo "<td bgcolor='#ffffff'>".$myrow[user]."</td>";
echo "<td bgcolor='#ffffff'>".$myrow[number]."</td>";
echo "<td bgcolor='#ffffff'>".$myrow[explains]."</td>";
echo "</tr>";
}
echo "</table>";
}
?>
二、运行结果
更多关于php相关内容感兴趣的读者可查看本站专题:《php+ajax技巧与应用小结》、《php网络编程技巧总结》、《php基本语法入门教程》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家php程序设计有所帮助。
【说明】:本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:)!