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

一、代码

conn.php

?

1

2

3

4

5

<?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

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

<!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

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

<?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>";

  }

?>

猜你喜欢

转载自blog.csdn.net/qq_34489091/article/details/81083357