如何使用数据库中的ajax调用json数据(php / mysql)

时间:2014-01-28 14:45:53

标签: php jquery mysql ajax json

我有一张表格,这里的图表是演示:http://jsbin.com/IhEmetI/8和代码:http://jsbin.com/IhEmetI/8/edit

我谨慎使用这些数据:

// Prepare the data
        var data = google.visualization.arrayToDataTable([
          ['Name', 'Gender', 'Age', 'Donuts eaten'],
          ['Michael' , 'Male', 12, 5],
          ['Elisa', 'Female', 20, 7],
          ['Robert', 'Male', 7, 3],
          ['John', 'Male', 54, 2],
          ['Jessica', 'Female', 22, 6],
          ['Aaron', 'Male', 3, 1],
          ['Margareth', 'Female', 42, 8],
          ['Miranda', 'Female', 33, 6]
        ]);

但我想从mysql数据库调用数据:

CREATE TABLE table_name
(
    ID varchar(255),
    Name varchar(255),
    Gender varchar(255),
    Age varchar(255),
    Donuts_eaten varchar(255)
)

INSERT INTO table_name VALUES ('1', 'Mike', 'Male', '23', '5')
INSERT INTO table_name VALUES ('2', 'Annne', 'Female', '44', '7')
INSERT INTO table_name VALUES ('3', 'John', 'Male', '32', '10')

所以我需要用php获取表来获得像这样的json输出:

  

[{“ID”:“1”,“姓名”:“迈克”,“性别”:“男性”,“年龄”:“23”,“甜甜圈”   吃了“:”5“},{”ID“:”2“,”姓名“:”Annne“,”性别“:”女性“,”年龄“:   “44”,“吃甜甜圈”:“7”},{“ID”:“3”,“姓名”:“约翰”,“性别”:   “男性”,“年龄”:“32”,“吃甜甜圈”:“10”}]

并且我需要将JSON数据从数据库放到变量data? 我怎么能这样做? 什么php文件需要看起来像? 如何使用数据frm数据库更改我的数据?

2 个答案:

答案 0 :(得分:1)

在PHP中,您只需连接到数据库并获取结果即可。我假设您知道如何连接到数据库,但有许多教程如何在线连接和使用MYSQL数据库。

您现在要做的是为每个数据集获取您想要的信息并将它们放入数组中。 array('key1'=>'value1','key2'=>'value2'); 通过foreach循环迭代一组结果。

一旦你有一个包含你想要的每个信息的数组,你就会返回这个: json_encode($ myArray,true);

确保将“返回网站”的标题设置为json格式。

答案 1 :(得分:1)

复制粘贴,稍加修改:http://ee1.php.net/mysqli_query

$mysqli = new mysqli("localhost", "my_user", "my_password", "database");

if ($mysqli->connect_errno) {
    printf("Connect failed: %s\n", $mysqli->connect_error);
    exit();
}

$array = array();

$sql = "SELECT * FROM table_name";
if ($result = $mysqli->query($sql)) {
    while($obj = $result->fetch_object()) {
        $arr[] = $obj;
    }

    $result->close();
}

header('Content-Type: application/json');
echo json_encode($arr);