ajax返回数据类型 text json xml

<?php

class DBDA
{
    public $host = "localhost"; //服务器地址
    public $uid = "root"; //数据库的用户名
    public $pwd = ""; //数据库的密码

    //执行SQL语句,返回相应结果的函数
    //$sql是要执行的SQL语句
    //$type是SQL语句的类型,0代表增删改,1代表查询
    //$db代表要操作的数据库
    public function Query($sql,$type=1,$db="mydb")
    {
        //造连接对象
        $conn = new MySQLi($this->host,$this->uid,$this->pwd,$db);

        //判断连接是否成功
        !mysqli_connect_error() or die("连接失败!");

        //执行SQL语句
        $result = $conn->query($sql);

        //判断SQL语句类型
        if($type==1)
        {
            //如果是查询语句返回结果集的二维数组
            return $result->fetch_all();
        }
        else
        {
            //如果是其他语句,返回true或false
            return $result;
        }
    }

    //Ajax调用返回JSON
    public function JsonQuery($sql,$type=1,$db="mydb")
    {
        //定义数据源
        $dsn = "mysql:dbname={$db};host={$this->host}";
        //造pdo对象
        $pdo = new PDO($dsn,"{$this->uid}","{$this->pwd}");

        //准备执行SQL语句
        $st = $pdo->prepare($sql);

        //执行预处理语句
        if($st->execute())
        {
            if($type==1)
            {
                $attr = $st->fetchAll(PDO::FETCH_ASSOC);
                return json_encode($attr);
            }
            else
            {
                if($st)
                {
                    return "OK";
                }
                else
                {
                    return "NO";
                }
            }

        }
        else
        {
            echo "执行失败!";
        }

    }
    //Ajax调用返回字符串
    public function StrQuery($sql,$type=1,$db="mydb")
    {
        //造连接对象
        $conn = new MySQLi($this->host,$this->uid,$this->pwd,$db);

        //判断连接是否成功
        !mysqli_connect_error() or die("连接失败!");

        //执行SQL语句
        $result = $conn->query($sql);

        //判断SQL语句类型
        if($type==1)
        {
            $attr = $result->fetch_all();
            $str = "";
            //如果是查询语句返回字符串
            for($i=0;$i<count($attr);$i++)
            {
                for($j=0;$j<count($attr[$i]);$j++)
                {
                    $str = $str.$attr[$i][$j];
                    $str = $str."^";
                }
                $str = substr($str,0,strlen($str)-1);
                $str = $str."|";
            }
            $str = substr($str,0,strlen($str)-1);

            return $str;
        }
        else
        {
            //如果是其他语句,返回true或false
            if($result)
            {
                return "OK";
            }
            else
            {
                return "NO";
            }
        }
    }

}
<?php

class DBDA
{
    public $host = "localhost"; //服务器地址
    public $uid = "root"; //数据库的用户名
    public $pwd = "123"; //数据库的密码

    //执行SQL语句,返回相应结果的函数
    //$sql是要执行的SQL语句
    //$type是SQL语句的类型,0代表增删改,1代表查询
    //$db代表要操作的数据库
    public function Query($sql,$type=1,$db="mydb")
    {
        //造连接对象
        $conn = new MySQLi($this->host,$this->uid,$this->pwd,$db);

        //判断连接是否成功
        !mysqli_connect_error() or die("连接失败!");

        //执行SQL语句
        $result = $conn->query($sql);

        //判断SQL语句类型
        if($type==1)
        {
            //如果是查询语句返回结果集的二维数组
            return $result->fetch_all();
        }
        else
        {
            //如果是其他语句,返回true或false
            return $result;
        }
    }

    //Ajax调用返回JSON
    public function JsonQuery($sql,$type=1,$db="mydb")
    {
        //定义数据源
        $dsn = "mysql:dbname={$db};host={$this->host}";
        //造pdo对象
        $pdo = new PDO($dsn,"{$this->uid}","{$this->pwd}");

        //准备执行SQL语句
        $st = $pdo->prepare($sql);

        //执行预处理语句
        if($st->execute())
        {
            if($type==1)
            {
                $attr = $st->fetchAll(PDO::FETCH_ASSOC);
                return json_encode($attr);
            }
            else
            {
                if($st)
                {
                    return "OK";
                }
                else
                {
                    return "NO";
                }
            }

        }
        else
        {
            echo "执行失败!";
        }

    }
    //Ajax调用返回字符串
    public function StrQuery($sql,$type=1,$db="mydb")
    {
        //造连接对象
        $conn = new MySQLi($this->host,$this->uid,$this->pwd,$db);

        //判断连接是否成功
        !mysqli_connect_error() or die("连接失败!");

        //执行SQL语句
        $result = $conn->query($sql);

        //判断SQL语句类型
        if($type==1)
        {
            $attr = $result->fetch_all();
            $str = "";
            //如果是查询语句返回字符串
            for($i=0;$i<count($attr);$i++)
            {
                for($j=0;$j<count($attr[$i]);$j++)
                {
                    $str = $str.$attr[$i][$j];
                    $str = $str."^";
                }
                $str = substr($str,0,strlen($str)-1);
                $str = $str."|";
            }
            $str = substr($str,0,strlen($str)-1);

            return $str;
        }
        else
        {
            //如果是其他语句,返回true或false
            if($result)
            {
                return "OK";
            }
            else
            {
                return "NO";
            }
        }
    }

}

返回类型为json

<script type="text/javascript">

$(document).ready(function(e) {

    $.ajax({
        url:"chuli.php",
        data:{},
        dataType:"JSON",
        type:"POST",
        success: function(data){

            /*    for(key in data)
                {
                    alert(data[key].Name);
                }*/

                for(var i=0;i<data.length;i++)
                {
                    alert(data[i].Name);
                }

            }

        });

});

</script>

处理页面

<?php
2
3 include("DBDA.php");
4 $db = new DBDA();
5
6 $sql = "select * from Nation";
7
8 echo $db->JsonQuery($sql);

返回类型为text就调用DBDA里的返回字符串的方法

返回类型为xml

<script type="text/javascript">

$(document).ready(function(e) {

    $.ajax({
        url:"chulixml.php",
        data:{},
        dataType:"XML",
        type:"POST",
        success: function(data){

            alert($(data).find("Name").eq(0).text());//eq(1)时就查处理页面的n2

            }

        });

});

</script>
<script type="text/javascript">

$(document).ready(function(e) {

    $.ajax({
        url:"chulixml.php",
        data:{},
        dataType:"XML",
        type:"POST",
        success: function(data){

            alert($(data).find("Name").eq(0).text());//eq(1)时就查处理页面的n2

            }

        });

});

</script>

处理页面

<?php

$str = <<<AA
    <Info>
        <n1>
            <Code>n001</Code>
            <Name>张三</Name>
            <Sex>男</Sex>
        </n1>
        <n2>
            <Code>n002</Code>
            <Name>李四</Name>
            <Sex>女</Sex>
        </n2>
    </Info>
AA;

echo $str;

?>
<?php

$str = <<<AA
    <Info>
        <n1>
            <Code>n001</Code>
            <Name>张三</Name>
            <Sex>男</Sex>
        </n1>
        <n2>
            <Code>n002</Code>
            <Name>李四</Name>
            <Sex>女</Sex>
        </n2>
    </Info>
AA;

echo $str;

?>
时间: 2024-08-27 09:44:17

ajax返回数据类型 text json xml的相关文章

ajax返回数据类型为JSON数据的处理

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

ajax 另外两种返回类型(json xml)

返回json类型(例子): <!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=

ajax返回数据类型为XML数据的处理

/*XML:可扩展标记语言 HTML:超文本标记语言 标签:<标签名></标签名> 特点: 1.必须要有一个根 2.标签名自定义 3.对大小写敏感 4.有开始就要有结束 5.同一级别下只能有一个标签名 <nation> <n1> <code>n001</code> <name>汉族</name> </n1> <n2> <code>n002</code> <n

Asp.Net WebAPI配置接口返回数据类型为Json格式

一.默认情况下WebApi 对于没有指定请求数据类型类型的请求,返回数据类型为Xml格式 例如:从浏览器直接输入地址,或者默认的XMLRequest,或者AngularJs的get请求等. 对于有循环引用的也会抛出异常""ObjectContent`1"类型未能序列化内容类型"application/xml; charset=utf-8"的响应正文." 二.设置返回格式为Json数据 1.修改配置,这对所有的接口都生效 找到Global.asax

Ajax返回数据类型

MVC中,如果从controller返回的不是一个html,而是一个文本,使用AJAX中如何获取? public ActionResult UploadPicture() {return Content("ok"); // return Content("{result:'" + imgMsg + "',url:'" + imgUrl + "'}"); //本行是反回json格式的字符 } AJAX代码: $.ajax({ t

Ajax返回值之XML、json类型

Ajax返回值之XML.json类型 2015-01-29 ? 注意:Ajax默认是不能跨域的,在最新的2.0里是可以跨域,但是需要对方应答. ? Ajax返回值之XML类型 <HTML代码> <html> ????<head> ????????<title>Ajax返回return</title> ????<script> function?createXHR(){ ????var?xhr?=?null; ????if(window

12.28 AJAX 返回TEXT值

后台源代码 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="serv

php中使用ajax进行前后端json数据交互

(最近在学习ajax,所以想自己总结一下在PHP中如何使用ajax技术!) 一.ajax注意点: 1.原理图:(来自韩顺平ajax视频) 2.ajax返回数据类型: 文本,json,xml (1)文本格式: (2)xml: 1 <?php 2 //告诉浏览器返回的是xml类型 3 header("Content-Type:text/xml;charset=utf-8"); 4 5 6 7 8 ?> 前端如何取出: xmlrequest.responseXml();//返回的

ajax返回的两种数据类型xml和json用法

用xml传单个数据 首先在servlet类里面写好要传的数据,Dog是模拟从数据库中提取的内容, 用response.getwrite().append()传回数据,要注意表头<?xml version='1.0'?>不能写错,根是唯一的 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Aut