【问题标题】:PHP order by doesn't display data in orderedPHP order by 不按顺序显示数据
【发布时间】:2019-11-22 07:20:43
【问题描述】:

我对 Web 开发完全陌生。我正在做一个用于学习目的的个人项目。

我有一个 php 页面,它查询我的数据库并返回数据。 我的查询是: SELECT * FROM myTable ORDER BY id;

使用 SQL GUI 工具可以正常工作。

当我加载我的页面时,数据不是按 ID 排序的。每次刷新页面,顺序都是随机变化的。

我的 HTML 标题部分

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
<script src="https://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.12.4.min.js"></script>
<script>window.jQuery || document.write('<script src="/js/jquery-1.12.4.min.js">\x3C/script>')</script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>

我的 loadData.php 页面

try {
    $connection = new PDO($dsn, $username, $password, $options);
    $sqlData = "SELECT * FROM cc_data_tbl where cc_uuid = '" . $_GET['load_uuid'];
    $statement = $connection->query($sqlData);        
    $results = $statement->fetchAll(PDO::FETCH_ASSOC);

    if ($statement->rowCount() == 0){
        echo "No Data";
    } else { ?>
        <div class="wrapper">
            <div class="container-fluid">
                <div class="row">
                    <div class="col-md-12">
                        <div class="page-header clearfix">
                            <?php
                                echo "<table class='table table-bordered table-striped' id=\"transactionList\">";
                                echo "<thead>";
                                echo "<tr>";
                                echo "<th>Transaction Date</th>";
                                echo "<th>Listing Date</th>";
                                echo "<th>Description</th>";
                                echo "<th>Amount</th>";
                                echo "<th>Category</th>";
                                echo "<th>Category Type</th>";
                                echo "</tr>";
                                echo "</thead>";
                                echo "<tbody>";
                                foreach($results as $row){
                                    echo "<tr>";
                                    echo "<td>" . $row['cc_transac_date'] . "</td>";
                                    echo "<td>" . $row['cc_listing_date'] . "</td>";
                                    echo "<td>" . $row['cc_description'] . "</td>";
                                    echo "<td>" . $row['cc_amount'] . "</td>";
                                    echo "<td>" . $row['cc_category'] . "</td>";
                                    echo "<td>" . $row["cc_category_type"] . "</td>";
                                    echo "</tr>";
                                }
                                echo "</tbody>";                            
                                echo "</table>";
                            ?>
                        </div>
                    </div>        
                </div>
            </div>
        </div>
    <?php }
    } catch (PDOException $error) {
        echo $error -> getMessage();
} 

我希望我的数据按 ID 排序,但事实并非如此。 这是一个非常基本的 SQL 查询......所以我认为 HTML / PHP / Bootstrap 有一些我真的不理解的东西,因为所有这些东西对我来说都是新的。

【问题讨论】:

  • 您的 loadData.php 中的 sql 查询中似乎没有 order 语句。您可能还想阅读以下内容:stackoverflow.com/questions/60174/…
  • 嗨皮特,啊哈!我的错误是试图理解为什么 order by 不起作用并且在发布时确实注意了。 SQL 查询是: $sqlData = "SELECT * FROM cc_data_tbl where cc_uuid = '" 。 $_GET['load_uuid'] 。 " ORDER BY cc_id";
  • 肯定有一个cc_id 列,因为你似乎在cc_uuid 上做一个where(似乎很奇怪,有2 个id 字段)
  • 嗨达曼,是的,我知道。一旦我在学习过程中取得进展,我会在稍后研究它:)谢谢您指出。

标签: php html twitter-bootstrap html-table sql-order-by


【解决方案1】:

如果您的问题仍然存在,请检查您的 table class("table table-bordered table-striped") 。对表类中的变量进行排序。我会给你举个例子。希望对你有帮助。

$('#simple-table').DataTable({
            "order": [[ 0, "desc" ]],
            "autoWidth": true,
            "language": {
                "url": "//cdn.datatables.net/plug-ins/1.10.16/i18n/Turkish.json"
            }
        });

【讨论】:

  • 嗨 Yasin,我应该在哪里复制这段代码来试试?我对网络东西几乎一无所知。
  • 啊,我想我明白了。我必须扩展 Bootstrap 的东西吗?我创建了一个新的 js 文件(称为 dt_bootstrap.js),我在其中添加了上述稍作修改的代码(调整了表名并且只使用了订单行)。它似乎工作正常!非常感谢!
  • 嗨@Yassin,不幸的是,我觉得我被炒作了。经过一些测试,我意识到它不起作用:(我一定做错了。
  • 最后,我升级到 Bootstrap 4.2.1 并重新设计了页面。但是我丢失了字形!我搬到了 Font Awsome,现在一切都如预期的那样。
  • 嗨,hunkerjr,很抱歉回复晚了。你的问题解决了吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-08-22
  • 1970-01-01
  • 2023-03-27
  • 2018-11-29
  • 2013-12-22
相关资源
最近更新 更多