繁体   English   中英

Codeigniter类别和子类别仅显示最后一个类别和子类别

[英]Codeigniter Category and Sub Categories Only Show Last Category and Sub Categories

我想在其中显示房间类型和房间号:

1号房型

  • 房间号1
  • 2号房间
  • 3号房间
  • 房间号4

2号房

  • 房间号1
  • 2号房间
  • 3号房间
  • 房间号4

等等。

这是我的桌子

room_type
-------
room_type_id (int)
room_type_name (varchar)
room_price (float)
room_detail (text)

room
-------
room_e_id (int)
room_type_id (int)
room_number (int)
room_status (varchar)

这是我的模特

function get_room_type() {
    $query = $this->db->get('room_type');
    $return = array();
    foreach ($query->result() as $room) {
        $return['$room->room_type_id'] = $room;
        $return['$room->room_type_id'] -> subs = $this->get_room_list($room->room_type_id);
    } return $return;
}

public function get_room_list($room_type_id) {
    $this->db->where('room_type_id', $room_type_id);
    $query = $this->db->get('room');
    return $query->result();
}

这是我的控制器

$data['room_list'] = $this->m_fo->get_room_type();

并查看

<ul>
<?php foreach ($room_list as $row) { ?>
 <li>
  <?php echo $row->room_type; ?> <?php
   if (!empty($row->subs)) {
   echo '<ul>';
   foreach ($row->subs as $sub) {
    echo '<li>' . $sub->room_no . ' - ' . $sub->room_status . '</li>';
    } echo '</ul>';
   }
  ?>
 </li> <?php } ?>
</ul>

但是您只能在这里看到我页面上的最后一个房间类型和房间号,您可以在屏幕上看到屏幕截图吗? 谢谢

在单引号内,所有内容都视为字符串,因此您应像这样更改这两行。

 $return[$room->room_type_id]->rooms = $room;
 $return[$room->room_type_id]->subs = $this->get_room_list($room->room_type_id);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM