您的位置 首页 php

用于AJAX 请求的PHP后端

PHP链接Mysql池

 <?php
     header ("content-type:application/html; charset =UTF-8");
    class Mysqldb{
         private  $conn;
        public function __construct($host='',$user='',$pwd='',$database=''){
            $this->conn= mysqli _connect($host,$user,$pwd,$database);
            if($this->conn){
                $this->conn->set_charset('utf8');
            }
        }
        public function query($sql){
            $result=mysqli_query($this->conn,$sql);
            $arr=array();
            while ($row = $result->fetch_assoc()){
                array_push($arr,$row);
            }
            mysqli_free_result($result);
            return json_encode($arr);
        }
        public function update($sql){
            $result=mysqli_query($this->conn,$sql);
            $arr=array();
            if($result){
                $arr['flag']=true;
                $arr['msg']='Sucessful';
            }else{
                $arr['flag']=false;
                $arr['msg']='Failure';
            }
            return json_encode($arr);
        }
        public function __destruct(){
            mysqli_close($this->conn);
            $this->conn=null;
        }
    }
?>  

AJAX请求例子:

  $.ajax({
              type: 'post',
              url: 'json/inb_json.php',
              contentType: "application/x-www-form-urlencoded", // 如果是post必须定义
              dataType: 'json',
              data: {//将传递参数放进data
                  action: 'q_sort_update', //给后端一个flag说明你要做什么
                  sort_code: $('#sort_code').val() //获取查询的一个参数
              },
              success: function (data) {
                  console.log(data);
                  var flag = String(data.flag);
                  if (flag == "true") {
                      modal_js.success({
                          'msg': 'Update Successful"',
                          'time': 2000,
                          'icon': 1
                      });
                      $('#full_task_list'). bootstrap Table('refresh'); //刷新bootstrap table
                      $('#editModal').modal('hide'); //隐藏modal
                  }
                  else {
                       alert ('Edit Error');
                  }
              }
          })  

后端PHP

 <?php
require("../connections/mysql_li_db.php"); //引用连接池
header("content-type:application/json;charset=UTF-8"); //重要
$ sql s = new Mysqldb(); //实例化链接
if ($_REQUEST['action'] == 'q_sort_query') {//这里就是AJAX请求的的定义的action
  $sort_code = $_REQUEST['sort_code']; //这里是AJAX传递过来的用于查询的参数
    $sql = "放你的sql语句";
    $con = $sqls->query($sql); //这里用的就是连接池里的query()封装的函数,如果是删除也可以用这个,如果是更新或者插入可以用update();
    echo $con;
}  

这样可以将所有的后端PHP处理都放到一个php页面,不用不同的AJAX请求要开一个不同的PHP后端页面,这篇只是简单的带参数的请求,如果是批量的请求,稍后的文章会介绍,如果大家有更高效率的方法,也可以指导一下。。谢谢

文章来源:智云一二三科技

文章标题:用于AJAX 请求的PHP后端

文章地址:https://www.zhihuclub.com/76887.shtml

关于作者: 智云科技

热门文章

网站地图