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

作者:chengqiuming 时间:2023-09-07 22:44:41 

本文实例讲述了原生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">&nbsp;</td>
 <td colspan="2" align="center" valign="bottom"><strong>查询员工信息,根据员工技能信息</strong></td>
 <td width="40">&nbsp;</td>
</tr><form id="searchform" name="searchform" method="post" action="#">
<tr>
 <td height="25">&nbsp;</td>
 <td width="150" align="right">员工姓名:   </td>
 <td width="350" align="left"><input name="user" type="text" id="user" size="30" /></td>
 <td>&nbsp;</td>
</tr>
<tr>
 <td height="25">&nbsp;</td>
 <td align="right">员工编号:   </td>
 <td align="left"><input name="number" type="text" id="number" size="20" /></td>
 <td>&nbsp;</td>
</tr>
<tr>
 <td height="25">&nbsp;</td>
 <td align="right">技能描述:   </td>
 <td align="left"><textarea name="explains" cols="40" rows="3" id="explains"></textarea></td>
 <td>&nbsp;</td>
</tr>
<tr>
 <td height="25">&nbsp;</td>
 <td colspan="2" align="center">
 <input type="button" name="Submit" value="提交" onclick="showsimple();" />&nbsp;&nbsp;
 <input type="reset" name="Submit2" value="重置" /></td>
 <td>&nbsp;</td>
</tr> </form>
<tr>
 <td height="268">&nbsp;</td>
 <td colspan="2" align="center" valign="top"><div id="webpage"></div></td>
 <td>&nbsp;</td>
</tr>
<tr>
 <td>&nbsp;</td>
 <td colspan="2">&nbsp;</td>
 <td>&nbsp;</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程序设计有所帮助。

来源:https://blog.csdn.net/chengqiuming/article/details/78600680

标签:Ajax,POST,PHP
0
投稿

猜你喜欢

  • 使用python如何提取JSON数据指定内容

    2022-08-06 23:48:41
  • Python之修改图片像素值的方法

    2022-03-14 03:46:18
  • python基于queue和threading实现多线程下载实例

    2023-02-04 09:58:22
  • 教学演示-UBB,剪贴板,textRange及其他

    2008-01-27 13:46:00
  • Python进阶之全面解读高级特性之切片

    2023-08-06 21:28:00
  • Go语言中Goroutine的设置方式

    2024-05-13 10:40:43
  • golang 实用库gotable的具体使用

    2024-04-27 15:31:48
  • Python 提取dict转换为xml/json/table并输出的实现代码

    2021-01-26 17:56:17
  • js中json处理总结之JSON.parse

    2024-03-28 22:06:31
  • ORACLE 10g 安装教程[图文]

    2023-07-15 07:07:27
  • 关于导航的探讨

    2008-03-21 12:04:00
  • [翻译]标记语言和样式手册 Chapter 11 打印样式

    2008-02-11 18:44:00
  • ASP 常见的连接字符串写法(access2007)

    2011-03-25 10:40:00
  • django将网络中的图片,保存成model中的ImageField的实例

    2023-12-23 01:11:33
  • 能说明一下GETROWS的用法吗?

    2009-11-02 20:12:00
  • Mac PyCharm中的.gitignore 安装设置教程

    2023-02-23 16:48:14
  • python argparse模块通过后台传递参数实例

    2021-05-08 04:13:17
  • Python实现查询剪贴板自动匹配信息的思路详解

    2022-09-16 06:35:41
  • Python中字符串切片详解

    2022-04-27 01:58:11
  • Go语言基于HTTP的内存缓存服务的实现

    2024-05-21 10:25:12
  • asp之家 网络编程 m.aspxhome.com