php - 显示同一 div 内表中的所有相等值

标签 php html mysql

此代码从表中获取所有值,并且对于每一行,它都会在警报 div 中显示其详细信息,我可以单击该单个产品的“订单就绪按钮”。

我需要做的是将来自同一订单的所有产品放入一个 div 中,为此我正在考虑使用具有相同日期值的所有行,并且当该值更改时创建一个新的分区。

            <?php
            $result = mysqli_query($mysqli, "SELECT * FROM kitchen");

            while ($row = mysqli_fetch_array($result)) {

                $table = $row['table'];
                $customer = $row['customer'];
                $product = $row['product_name'];
                $code = $row['product_code'];
                $size = $row['size'];
                $id = $row['id'];
                $date = $row['date'];

// It would have to open here in each first distinct $date
                echo '<div class="alert alert-info" role="alert" id="'.$code.'">';
                echo '<h4>'.'Table '.$table.'</h4>';
                echo '<h4>'.'Name: '.$name.'</h4>';


// Repeat this for each equal $date value
                if($code=="A01"||$code=="A02"||$code=="A03"||$code=="A04"){
                echo '<h4>'.$code.' - '.$product.' ('.$size.')'.'</h4>';
                }
                else{
                    echo '<h4>'.$code.' - '.$product.'</h4>';
                }

// Close here before each next distinct $date
                echo '<form action="actionkitchen.php" method="post">';
                echo "<button class='btn btn-lg btn-primary btn-block' name='data' value='$data' type='submit'>Order Ready</button>";
                echo '</form>';
                echo '</div>';      
            }
         ?>

最佳答案

这就是我最终得到的,不是最优雅的解决方案,但它有效。

<?php
    $result = mysqli_query($mysqli, "SELECT * FROM kitchen");

    while ($row = mysqli_fetch_array($result)) {

        $table[] = $row['table'];
        $name[] = $row['name'];
        $product[] = $row['product_name'];
        $code[] = $row['product_code'];
        $size[] = $row['size'];
        $date[] = $row['date'];     
    }

    $count = array_count_values($date);
    $y = 0;

    foreach ($count as $item){         
        for($i=0;$i<$item;$i++){
            if($i==0){
                echo '<div class="alert alert-info">';
                echo '<h4>'.'Table '.$table[$y].'</h4>';
                echo '<h4>'.'Name: '.$name[$y].'</h4>';
            }
            if($code[$y]=="A01"||$code[$y]=="A02"||$code[$y]=="A03"||$code[$y]=="A04"){
            echo '<h4>'.$code[$y].' - '.$product[$y].' ('.$size[$y].')'.'</h4>';
            }
            else{
                echo '<h4>'.$code[$y].' - '.$product[$y].'</h4>';
            }
            if($i==$item-1){
                echo '<form action="actionkitchen.php" method="post">';
                echo "<button class='btn btn-lg btn-primary btn-block' name='data' value='$data[$y]' type='submit'>Order Ready</button>";
                echo '</form>';
                echo '</div>';  
            }
            $y++;
        }
    }
 ?>  

关于php - 显示同一 div 内表中的所有相等值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40836728/

相关文章:

php - cURL 从有效的 url 返回空输出 - 没有错误报告

php - 如何使用 jQuery 将 div 的宽度更改为 100%?

php - 如何找出 fork child 的最佳数量

html - 段落前添加的空文本节点。为什么?

java - 在单个事务中运行 spring @Transactional 注释方法

sql - sql中的朴素贝叶斯计算

php - MySQL通过PHP更新多行

php - TinyMCE 和 Laravel 5.3 TokenMismatchException

html - 背景图像和边框

jquery - HTML onmouseover 无法显示文本