php - SQL Select 在 phpmyAdmin 和 . PHP HTML

标签 php mysql select

我总是错过第一行结果,这在只有一行结果时更为明显。

我的 PDO 命令有问题。请问有什么改正的建议吗?如果我删除 $pod->prepare 没有任何作用。不确定该怎么做?

<?php
$sql = "SELECT  * FROM Order_Items 
        JOIN    Parts ON Parts.id = Order_Items.part_id
        WHERE   Order_Items.orders_id = $id
        AND     qty <> 0
        ORDER BY Parts.id";

        $q = $pdo->prepare($sql);
        $q->execute(array());
        $row = $q->fetch(PDO::FETCH_ASSOC); // Roy says this is not needed

        while ($row = $q->fetch(PDO::FETCH_ASSOC)) 
        {
            echo    '<tr>';
            echo    '<td>' . $row['part_num'] . '</td>';
            echo    '<td>' . $row['part_desc'] . '</td>';
            echo    '<td>' . $row['qty'] . '</td>';
        }

    Database::disconnect();
?>

最佳答案

您正在复制 $row = $q->fetch(PDO::FETCH_ASSOC);
当您将 $q asing 到 $row 时,$q->fetch 已清除(无数据),因此在 IF 语句 中您没有要在 $q 中获取的行。 您必须删除 $row = $q->fetch(PDO::FETCH_ASSOC); 并仅在 IF 中使用它。
同时尝试对$q 执行fetchAll()

$result = $query -> fetchAll();

foreach( $result as $row ) {
    /*CODE*/
}

关于php - SQL Select 在 phpmyAdmin 和 . PHP HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43120262/

相关文章:

php - 如何在 PHP 中解析 A​​pache 的错误日志?

php - 属性的 MySQL 增量值 - 有时会丢失(?)

javascript - 通过javascript发布php变量

php - 按关系项过滤结果

java - MySQL: "error in your SQL syntax"的来源

php - 我怎样才能提取某些 HTML 标签,例如<ul> 在 PHP 中将正则表达式与 preg_match_all 结合使用?

php - 为 CMS 创建自定义 "html"标签?

mysql - 创建mysql分区报错

mysql - 泛化表查询

mysql - 选择 * 和查询优化器