如何使用Slim Framework查询和回显列中的所有数据

时间:2015-07-14 14:40:19

标签: php mysql

我正在研究Slim Framework中的一个简单的高分系统(还是初学者),我在查询用户数据时遇到困难。我需要查询表中的两列(用户,级别)并按级别(desc)对其进行排序。

     user
   -----------------------
    id |  name |  level |
   -----------------------
    1  |  Tom  |   10   |

纯PHP中的代码

$result = mysql_query("SELECT name, level FROM user");
$storeArray = Array();
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
    $storeArray[] =  $row['name'];  
}

更有经验的人能为我提供一些代码示例,可以做我需要的吗?

2 个答案:

答案 0 :(得分:1)

用户资源的php slim代码可以是:

<?php
$app = new \Slim\Slim();
$app->get('/api/users', function () {

$sql_query = "SELECT id,name, level FROM user ORDER by level DESC";
try {
    $conn = new PDO('mysql:host=localhost;dbname=test', 'user', 'password');
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $rst = $conn->query($sql_query);
    $users= $rst->fetchAll(PDO::FETCH_OBJ);
    echo '{"users": ' . json_encode($users) . '}';
} 
catch(PDOException $e) {
    echo '{"error":{"text":'. $e->getMessage() .'}}';
}    

});
$app->run();

我将mysql代码更改为PDO,因为它对SQL安全性的安全性更好。

如果您访问 yourdomain.com/api/users ,您将获得用户列表。

答案 1 :(得分:0)

当你拥有大部分所需的代码时,我真的不知道怎么问这个?

使用您的代码:

$result = mysql_query("SELECT id, name, level FROM user ORDER by level DESC");
$storeArray = array();

while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
    $storeArray[] =  array(
        'id'    => $row['id'],
        'name'  => $row['name'],
        'level' => $row['level']
    );
}