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

标签 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'];  
}

更有经验的人可以为我提供一个可以满足我需要的代码示例吗?

最佳答案

用户资源的 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 注入(inject)的安全性。

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

关于php - 如何使用 Slim Framework 查询和回显列中的所有数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31409800/

相关文章:

php - Nginx 虚拟主机不工作

MySQL 查询优化 - 避免子查询

php - INSERT INTO MySQLi 语句在第一次后不起作用

javascript - 将新数据添加到数据库后更新下拉列表

mysql - 聚合 MySQL 数据,我正在使用 group by,但它并没有完全按照我的意愿进行

php - 我无法使用 Jquery、PHP 和 AJAX 将数据插入 MySQL 表

php - 生成错误 INSERT 语句的 Doctrine

php - 如何在远程 mysql 服务器上进行更快的查询

php - 每秒为所有用户运行一个 PHP 脚本

php - PHP MySQL 不支持 IN 吗?