• 使用Javascript Ajax 通信操作JSON数据 [上]


      以前只是知道json的格式而已,也做过的是从数据库获得数据然后弄成json的格式然后赋给HighCharts生成曲线,先把数据库的数据使用array()函数转换成数组,然后使用json_encode()函数将数组格式转换为json格式,从而再传输给HighCharts中的代码,从而生成曲线。 (json_code()和json_encode()的作用是一样的)

      今天加强了json_code()函数和json_decode()函数的学习,通过$.GET()来获得后台的数据然后输出到前台。

      下面是前台client.html的代码:

     1 <html>
     2   <head>
     3     <title>初始化网站基本信息</title>
     4     <meta charset="UTF-8">
     5     <meta name="viewport" content="width=device-width">
     6     <script type="text/javascript" src="jquery.js"></script>
     7   </head>
     8   <body>
     9         <script>
    10           $("document").ready(function() {
    11               var url = "server.php?inAjax=1&do=checkMember&username=ericwolf";
    12               var data={};
    13               $.get(url,data,function(res) {
    14             var jsonObj = eval("("+res+")");
    15             $("#username").val(jsonObj.username);
    16             $("#groupname").val(jsonObj.groupname);
    17             $("#uid").val(jsonObj.uid);
    18               });
    19           });
    20         </script>
    21 
    22         <div>
    23             用户名:<input type="text" name="username" id="username">
    24             <br/>
    25             会员组:<input type="text" name="groupname" id="groupname">
    26             <br>
    27             UID:<input type="text" name="uid" id="uid">
    28   </body>
    29 </html>

    其中$.GET中的function(res)中的res是返回前台的数据,因为返回后的数据在后台的时候已经使用json_code()转换为json格式了,然后通过jsonObj.username将获取的数据赋给表单中。

      下面是后台server.php的代码:

     1 <?php
     2 $inAjax = $_GET['inAjax'];
     3 $do = $_GET['do'];
     4 $do = $do?$do:"default";
     5 if(!$inAjax) return false;
     6 
     7 include 'db.class.php' ;
     8 
     9 switch($do) {
    10     case "checkMember":
    11           $username = $_GET['username'];
    12           $sql = "SELECT * FROM check_member WHERE username='$username'";
    13           $result = $dbObj->getOne($sql);
    14            echo (!empty($result))?json_encode($result):"null";
    15           break;
    16     case "default":
    17           die("nothing");
    18           break;
    19 }

    其中db,class.php是连接数据库的代码,还有包含了getOne()函数,这个函数是从数据库获取一条数据的函数。

      在浏览器中输入client.html后回车,然后在firebug中查看返回的数据如下图:

    点击该链接后得到下图:

        相应得到数据库的数据,并返回的格式是json格式。

    这时可以看到,原本表单中没有数据,现在已经有了获得的数据:

  • 相关阅读:
    MySQL的图形化安装
    java笔记整理
    运动会报名系统的简易实现
    JDBC知识点总结
    MySQL常用知识总结
    python的传参数用法
    R统计数据框的行数
    SAINT学习笔记
    win10 双网卡设置内网和外网同时访问
    根据GSVA结果绘制不同组的趋势图
  • 原文地址:https://www.cnblogs.com/jacson/p/4683315.html
Copyright © 2020-2023  润新知