原生JS实现Ajax通过POST方式与PHP进行交互的方法示例


Posted in PHP onMay 12, 2018

本文实例讲述了原生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>";
  }
?>

二、运行结果

原生JS实现Ajax通过POST方式与PHP进行交互的方法示例

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
PHP Smarty生成EXCEL文档的代码
Aug 23 PHP
在字符串指定位置插入一段字符串的php代码
Feb 16 PHP
PHP下对数组进行排序的函数
Aug 08 PHP
php字符串分割函数explode的实例代码
Feb 07 PHP
php笔记之:数据类型与常量的使用分析
May 14 PHP
destoon调用discuz论坛中带图片帖子的实现方法
Aug 21 PHP
php的api数据接口书写实例(推荐)
Sep 22 PHP
php json中文编码为null的解决办法
Dec 14 PHP
PHPExcel实现表格导出功能示例【带有多个工作sheet】
Jun 13 PHP
PHP实现SMTP邮件的发送实例
Sep 27 PHP
php实现网页上一页下一页翻页过程详解
Jun 28 PHP
浅谈如何提高PHP代码的质量
May 28 PHP
原生JS实现Ajax通过GET方式与PHP进行交互操作示例
May 12 #PHP
ThinkPHP框架实现导出excel数据的方法示例【基于PHPExcel】
May 12 #PHP
Laravel框架实现model层的增删改查(CURD)操作示例
May 12 #PHP
layui框架实现文件上传及TP3.2.3(thinkPHP)对上传文件进行后台处理操作示例
May 12 #PHP
PHP折半(二分)查找算法实例分析
May 12 #PHP
PHP区块查询实现方法分析
May 12 #PHP
可兼容php5与php7的cURL文件上传功能实例分析
May 11 #PHP
You might like
php桌面中心(一) 创建数据库
2007/03/11 PHP
PHP cdata 处理(详细介绍)
2013/07/05 PHP
php遍历类中包含的所有元素的方法
2015/05/12 PHP
Smarty模板配置实例简析
2019/07/20 PHP
再谈javascript原型继承
2014/11/10 Javascript
node.js中的path.join方法使用说明
2014/12/08 Javascript
JS实现点击按钮自动增加一个单元格的方法
2015/03/09 Javascript
JavaScript调用浏览器打印功能实例分析
2015/07/17 Javascript
Bootstrap模块dropdown实现下拉框响应
2016/05/22 Javascript
AngularJS表达式讲解及示例代码
2016/08/16 Javascript
Javascript中函数名.length属性用法分析(对比arguments.length)
2016/09/16 Javascript
ReactNative页面跳转实例代码
2016/09/27 Javascript
vue mint-ui学习笔记之picker的使用
2017/10/11 Javascript
vue 自定义右键样式的实例代码
2019/11/06 Javascript
JavaScript日期库date-fn.js使用方法解析
2020/09/09 Javascript
[02:25]DOTA2英雄基础教程 生死判决瘟疫法师
2013/12/06 DOTA
[43:51]2018DOTA2亚洲邀请赛3月30日 小组赛B组 EG VS Secret
2018/03/31 DOTA
[51:53]完美世界DOTA2联赛循环赛 LBZS vs DM BO2第二场 11.01
2020/11/02 DOTA
Python异常学习笔记
2015/02/03 Python
python简单猜数游戏实例
2015/07/09 Python
python实现txt文件格式转换为arff格式
2018/05/31 Python
Keras 利用sklearn的ROC-AUC建立评价函数详解
2020/06/15 Python
什么是python的自省
2020/06/21 Python
Html5原创俄罗斯方块(基于canvas)
2019/01/07 HTML / CSS
施华洛世奇日本官网:SWAROVSKI日本
2018/05/04 全球购物
凯蒂·佩里个人女鞋品牌:Katy Perry Collections
2019/04/04 全球购物
家乐福台湾线上购物网:Carrefour台湾
2020/09/15 全球购物
波兰办公用品和学校用品在线商店:Dlabiura24.pl
2020/11/18 全球购物
德国W家官网,可直邮中国的母婴商城:Windeln.de
2021/03/03 全球购物
自我鉴定书范文
2013/10/02 职场文书
物流管理应届生求职信
2013/11/07 职场文书
思想专业自荐信范文
2013/12/25 职场文书
你懂得怎么写自荐信吗?
2013/12/27 职场文书
中级会计职业生涯规划范文
2014/01/16 职场文书
青年志愿者服务活动总结
2015/05/06 职场文书
征求意见函
2015/06/05 职场文书