Как сделать динамический rowspan php codeigniter?

У меня есть таблица rowspan dynamic в приложении CodeIgniter, например:

<table>
<tr>
    <td>No</td>
    <td>Data</td>
    <td>Data 2</td>
    <td>Qty</td>
    <td>Price</td>
    <td>Sub Total</td>
    <td>TOtal</td>
</tr>
<?php

$source1 = $this->db->query("select * from table")->result_array(); 
$no=1;
foreach($source1 as source1){ ?>
    <tr>
        <?php 
        $source2 = $this->db->query("select * from table where data1='$source1[data1]'");
        $total_source2 = $source2->num_rows();
        $source3 = $source2->result_array();
        ?>
        <td rowspan = "<?php echo $total_source2 ?>"><?php echo $no; ?></td>
        <td rowspan = "<?php echo $total_source2 ?>"><?php echo $source1['data1']; ?></td>
        <?php foreach($source3 as $source3){ ?>
            <td><?php echo $source3['data2'] ?></td>
            <td><?php echo $source3['qty'] ?></td>
            <td><?php echo $source3['price'] ?></td>
            <td><?php echo $source3['sub_total'] ?></td>
            <td><?php echo $source3['total'] ?></td>
        </tr>
    <?php } ?>
    <?php $no++; } ?>
</table>

Это результат моего кода:

Как сделать динамический rowspan php codeigniter?

Как это сделать

Как сделать динамический rowspan php codeigniter?

?

Спасибо.

Можете ли вы загрузить экспорт для файла sql для таблицы? Просто поместите его в бесплатную службу загрузки файлов и разместите здесь.

Alex 26.07.2018 02:44
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
1
988
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Это примерно так же эффективно, как и все, что я могу придумать без фактического файла SQL, и я не уверен, работает ли он:

<table>
    <tr>
        <td>No</td>
        <td>Data</td>
        <td>Data 2</td>
        <td>Qty</td>
        <td>Price</td>
        <td>Sub Total</td>
        <td>Total</td>
    </tr>
    <?php
    $source1 = $this->db->query("select * from table")->result_array();
    $no = 1;
    foreach ($source1 as $source1) {
        ?>
        <tr>
            <?php
            $source2 = $this->db->query('select * from table where data1 = ' . $source1['data1']);
            $total_source2 = $source2->num_rows();
            $source3 = $source2->result_array();
            $rowspan = true;
            ?>
            <td rowspan = "<?php echo $total_source2 ?>"><?php echo $no; ?></td>
            <td rowspan = "<?php echo $total_source2 ?>"><?php echo $source1['data1']; ?></td>
            <?php foreach ($source3 as $source3) { ?>
                <td><?php echo $source3['data2'] ?></td>
                <td><?php echo $source3['qty'] ?></td>
                <td><?php echo $source3['price'] ?></td>
                <td><?php echo $source3['sub_total'] ?></td>
                <?php
                if ($rowspan) {
                    $q = $this->db->query('SELECT SUM(`sub_total`) as `nb` FROM `table` WHERE `data1` = ' . $source1['data1']);
                    echo "<td rowspan='{$total_source2}'>" . $q->row()->nb . '</td>';
                    $rowspan = false;
                }
                ?>
            </tr>
        <?php } ?>
        <?php
        $no++;
    }
    ?>
</table>

Спасибо большое. :)

Ahmad 26.07.2018 07:41

Другие вопросы по теме