php - 如何使用 PHP 和 MySQL 使用链接和 Get 来按字母顺序对表中的列进行排序?

标签 php html mysql

我有一张 table 。表中包含标题 customerID、姓名、城市、地址。它们位于表格顶部,并且是指向同一页面的链接。

我想要做的是,如果我在表格中按“Name”,它会将所有名称按顺序排列在该列中;与 customerID 相同,如果我按链接,它将对列中的所有数字进行排序。

希望大家能帮忙。

<html>
<head>
</head>
<body>
<?php
    $options = array(
        PDO::MYSQL_ATTR_INIT_COMMAND=> 'SET NAMES utf8',
    );
    $dsn        = 'mysql:host=localhost;dbname=name';
    $password   = 'pass';
    $username   = 'name';
    $db         = new PDO($dsn, $username, $password, $options);

    $query  = "SELECT";
    $stmt   = $db->prepare($query);
    $stmt->execute();

    echo "<table border=2>";
    echo "<tr>";
        echo "<th><a href="mypage.php?sort=customerid">Customer ID:      </a></th>";
        echo "<th><a href="mypage.php?sort=name">Name:</a></th>";
        echo "<th><a href="mypage.php?sort=city">City:</a></th>";
        echo "<th><a href="mypage.php?sort=address">Address:</a>     </th>";
    echo "</tr>";

    while($row = $stmt->fetch(PDO::FETCH_ASSOC))
    {
        echo "<tr>";
            $customerid     =$row['customerid'];
            $name           =$row['name'];
            $city           =$row['city'];
            $address        =$row['address'];

            echo "<td>Customer ID: $customerid</td>"; 
            echo "<td>$name</td>";
            echo "<td>$city</td>";
            echo "<td>$address</td>";
        echo "</tr>";
    }   
    echo "</table>";
?>      


最佳答案

我认为你需要添加这样的内容:

if(isset($_GET['sort'])){
    $sort = $_GET['sort'];
}

$stmt = $db->prepare("SELECT * FROM myTable ORDER BY :sort");

关于php - 如何使用 PHP 和 MySQL 使用链接和 Get 来按字母顺序对表中的列进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37535391/

相关文章:

php - SQLite 数据库已锁定,但仅适用于从在命令行运行的 PHP 脚本插入

PHP explode 函数只允许我在搜索 in_array 时检测数组的第一项。为什么?

javascript - 有没有办法在单击特定按钮时将当前页面保存为书签,并将该页面链接作为书签保存到用户个人资料中?

javascript - 如何在 Jasmine 中编写 FileReader 测试?

javascript - 将服务器端的值(value)转移到客户端

php - CodeIgniter - 如何在特定时间后自动删除数据库值?

PHP:如何获取 MySql 存储过程的输出值?

PHP 文件上传/move_uploaded_file 不工作

html - 将图像固定在顶部,但两侧有自动边距

php - SQLSTATE[42S22] : Column not found: 1054 Unknown column in lumen