zoukankan      html  css  js  c++  java
  • [转载]多维数组与Json格式的转化

    php数据库数据转换为js中的json对象

    直接上代码了.
    都有详细的注释 在

    有兴趣的朋友可以测试,测试…希望和大家更好的交流学习

    <?php
    /
    1.在company数据user表中取出10条数据,保存为数组
    2.在将数组转化为json格式,传递给js
    3.用json解析器将传递过来的json字符串转化为json对象,
    4.用document.write输出语句打印在页面上
    */

    $conn = mysql_connect(“localhost”,”root”,”root”);   //连接数据库
    mysql_query(“set names utf8″);                       //设置编码
    mysql_select_db(“company”,$conn);                    //选择库

    $sql = “select * from user limit 10″;                //在user表中查询10条数据
    $res = mysql_query($sql);                            //执行sql语句
    $arr = array();

    while($row = mysql_fetch_array($res,MYSQL_ASSOC)){   //查询出来sql
    $arr[] = $row;                                   //将查询出来的结果赋给数组$arr
    }

    $str = json_encode($arr);                           //将数组转化为json格式的字符串

    ?>

    <script src=”json_parse.js”></script>                    <!– 引入json解析器 –>
    <table>
    <tr>
    <th>uid</th><th>用户名</th><th>性别</th><th>email</th>
    </tr>
    <script>
    var jsonString = ‘<?php echo $str;?>’;          //传递php中的数据给js

    //document.write(jsonString);

    var jsonObject = json_parse(jsonString);            //将json字符串转化为js中的json对象

    for(var i = 0; i < jsonObject.length; i++){            //for循环打印
    document.write(“<tr>”);
    document.write(“<td>”,jsonObject[i].uid,”</td>”);
    document.write(“<td>”,jsonObject[i].username,”</td>”);
    document.write(“<td>”,jsonObject[i].sex,”</td>”);
    document.write(“<td>”,jsonObject[i].email,”</td>”);
    document.write(“</tr>”);
    }
    </script>
    </table>

    //----------------------------------------------------------------------------------

    我不得不承认:我是一个彻彻底底的JS白痴。但根据项目需要,不得不使用JSON,不管怎么说,经过一个晚上的学习,已经略有所成,记录下来。

    PHP的JSON类库我使用的是Services_JSON,没什么特别的优点,也没什么明显的缺点,对付用足矣。

    建立文件data.php:

    <?php 
    include("JSON.php");

    $data = array( 
        array('name' => mb_convert_encoding('老王', 'UTF-8', 'GBK'), 'age' => '28'), 
        array('name' => mb_convert_encoding('小黄', 'UTF-8', 'GBK'), 'age' => '27') 
    );

    $json = new Services_JSON();

    echo $json->encode($data);
    ?>

    Javascript解析JSON我使用的是Jquery,直接使用Javascript的eval则有个地方要注意:

    var myObject = eval('(' + myJSONtext + ')');

    具体可查看下面的参考链接。

    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
    <title>demo</title>
    <script type="text/javascript" src="jquery-latest.pack.js"></script>
    <script>
    $(function(){
            $.getJSON("data.php", function(json){
                 for(var i = 0; i < json.length; i++)
                 {
                     alert("姓名:" + json[i].name);
                     alert("年龄:" + json[i].age);
                 }
            });
    });
    </script>
    </head>

    <body>
    </body>
    </html>

  • 相关阅读:
    Roadblocks(poj 3255)
    最小集合(51nod 1616)
    绿色通道(codevs 3342)
    解的个数(codevs 1213)
    多米诺(codevs 3052)
    abcd
    dwarf tower
    第K 小数
    noip2016复习
    文化之旅(洛谷 1078)
  • 原文地址:https://www.cnblogs.com/fx2008/p/2718172.html
Copyright © 2011-2022 走看看