Я пытаюсь создать многоуровневый список. У меня есть две таблицы «Штат» и «Город». Таблица городов имеет внешний ключ state_id, который является первичным ключом таблицы State. Я хочу показать каждый штат, и в каждом штате есть несколько городов. Но когда я запускаю свой код, отображается только последнее сохраненное состояние в базе данных и города под ним. Я хочу, чтобы все штаты в Db и соответствующие ему города отображались.
Часть моего контроллера:
function index(){
$result = $this->db->count_all('state');
$id=1;
while ($id<=$result){
$data ['state'] = $this->state_model->stateid($id);
$data['city']=$this->state_model->statec($id);
$id++;
}
$this->load->view('state_view',$data);
}
Модель:
function stateid($id = 0){
$this->db->where('id',$id);
$sql = $this->db->get('state');
return $sql->result();
}
function statec($id = 0){
$this->db->where('state_id',$id);
$sql = $this->db->get('city');
return $sql->result();
}
Вид:
<?php foreach($state as $row):?>
<h4><?php echo $row->statename;?></h4>
<?php foreach($city as $row):?>
<?php echo $row->cityname; ?></br></br></br>
<?php endforeach;?></br></br>
<?php endforeach;?></br></br>