如何在代码点火器中组合'foreach'和值?

问题描述 投票:0回答:1

我想使用CodeIgniter 3从我的网站中的数据库中查看数据。有两种类型的方法可以在该网站中查看我的数据。首先是没有循环,我使用了这段代码:

<?php $s=$sched_stud->row();?>
<table class="table table-sm table-bordered">
                <tbody>
                    <tr>
                        <th scope="row">Full Name</th>
                        <td><?php echo $s->name;?></td>
                    </tr>
                    <tr>
                        <th scope="row">Level Enrolled</th>
                        <td><?php echo $s->level;?></td>
                    </tr>
                </tbody>
            </table>

第二个正在使用foreach,这是我的代码:

<tbody>
                        <?php
                        $a=1;
                        foreach ($sched_stud as $key) { ?>
                        <tr>
                            <th scope="row"><?php echo $a; $a++; ?>.</th>
                            <td>Tue, 8 Jan 2019</td>
                            <td>17.00 - 18.30</td>
                            <td><?php echo $key->room;?></td>
                            <td>Mrs. Adinda</td>
                            <td>Upcoming</td>
                        </tr>
                        <?php } ?>
                    </tbody>

但是有错误说:

Undefined property: mysqli::$room

我该如何解决?

php codeigniter-3
1个回答
0
投票

第一种方式,您只获得row()的一条记录

以第二种方式进行循环,因此您需要result()才能获取多条记录

                  <tbody>
                        <?php
                        $a=1;
                        foreach ($sched_stud->result() as $key) { ?>
                        <tr>
                            <th scope="row"><?php echo $a; $a++; ?>.</th>
                            <td>Tue, 8 Jan 2019</td>
                            <td>17.00 - 18.30</td>
                            <td><?php echo $key->room;?></td>
                            <td>Mrs. Adinda</td>
                            <td>Upcoming</td>
                        </tr>
                        <?php } ?>
                    </tbody>
© www.soinside.com 2019 - 2024. All rights reserved.