2010-10-11 2 views
0
function menuName() 
{ 
    $this->viewData['page_title'] = "ContentManagement Systemt!"; 
    $this->db->where('visible', 1); 
    $this->db->order_by("position", "ASC"); 
    $query = $this->db->get('subjects'); 
    $subjects = $query->result(); 
    foreach ($subjects as $subject) 
    { 
     echo $subject->menu_name ."<br />"; 
     $this->db->where('subject_id', $subject->id); 
     $query = $this->db->get('pages'); 
     $pages = $query->result(); 
     foreach ($pages as $page) 
     { 
      echo $page->menu_name ."<br />"; 
     }   
    } 
} 

Почему мой запрос не работает? Пожалуйста, скажите мне.Запрос не работает в CodeIgniter

+0

Что не работает? нет результатов? ошибка? неожиданные результаты? – Ross

+0

Да, пожалуйста, предоставьте более подробную информацию. Скажите нам, какие ошибки возникают, например. Или, может быть, как ваша таблица структурирована. Трудно помочь, когда вы просто покажете нам код. – treeface

+0

Когда я запускаю запрос, тогда просто появляется имя menu_name, но не появляется page menu_name. Я имею в виду, что 1-я петля работает, но 2-й цикл не работает – masud010

ответ

0

Вы всегда должны использовать цикл просмотра, как следующее:

$subjects = $query->result(); 
foreach ($subjects as $subject) 

Ваш подход имеет плохую производительность.

И, возможно, это уже решает вашу проблему - я не мог проверить ее прямо сейчас. Ваши переменные запроса называются одинаково, и вы используете $ query в обеих циклах foreach - это может привести к некоторому странному поведению.

+0

У меня есть изменение, так как я сказал, но не работал, но мне помогли – masud010

+0

Я изменил свои переменные $ subject и $ pages – masud010

+0

Я изменил, так как сказал мне, но пока не работал – masud010

0

Почему бы вам не повторить запрос следующим образом:

эхо $ this-> db-> last_query()

Чтобы увидеть, что происходит с результатами

Может быть проблема есть.

+0

Вы также можете $ this-> output-> enable_profiler (TRUE); на вашем контроллере, чтобы просмотреть запросы. –

Смежные вопросы