codeigniter передача данных в вид

Тема в разделе "PHP", создана пользователем mendosa, 30 июн 2011.

Модераторы: latteo
  1. mendosa

    mendosa Создатель

    Регистр.:
    15 окт 2009
    Сообщения:
    24
    Симпатии:
    0
    Здравствуйте.Изучаю фреймворк codeigniter.Модель вытаскивает из базы данные фоторгафий. .Контроллер получает из модели данные фотографии,но не могу передать в вид из него.Когда открываю вид -чистый лист.Должны быть выведенные из базы названия фотографий.Скрипт прилагаю:
    HTML:
    public function getAlbumPhotosArray($album_id)
        {
        
        /*выбираем из таблицы photos колонки id - индефикатор,file_name - название файла фотографии,titles- надпись под фотографией.*/
    
        $this->db->select('id, file_name, titles');
        // Устанавливаем WHERE-условие
        $this->db->where('album_id',$album_id);
        $query = $this->db->get('photos');
        // Обрабатываем результат
        
        $photos_ids[] = Array('photo_id'=>$row['id'], 'file_name'=>$row['file_name'],'titles'=>$row['titles']);
    
        return $photos_ids;
        }
      это модель,осуществляет соединение с базой
     --------------------------------------------------------------------------- 
       public function album_foto($album_id)
        {
         $data['fotos'] = $this->albums_model->getAlbumPhotosArray($album_id);
         
         $this->load->view('album_foto',$data);
        
        } 
     это контроллер должен передать в файл вида album_foto.php данные id- индефикатор и titles-надпись под фотографией  ,которые для него модель вытащила из базы  
     ------------------------------------------------------------------------- 
      
    Подскажите если есть такая возможность в чем ошибка,как передать данные в вид?
     
  2. saen

    saen

    Регистр.:
    6 авг 2006
    Сообщения:
    756
    Симпатии:
    129
    1)$photos_ids[] - зачем тебе многомерный массив, если ты не обходишь его в цикле?
    2)код вида покажи.
     
  3. mendosa

    mendosa Создатель

    Регистр.:
    15 окт 2009
    Сообщения:
    24
    Симпатии:
    0
    Приветствую.Из этого массива в контроллере были извлечены ранее id и file_name.В виде album_foto сделан переход на большие фото и на код вида album_foto с которым занимаюсь:
    файл вида album_foto это обычная пустая страница что там показывать когда в контроллере для проверки вставляю
    то в виде выводит
    .Это значит получен пустой массив? Ничего не передано?
     
  4. saen

    saen

    Регистр.:
    6 авг 2006
    Сообщения:
    756
    Симпатии:
    129
    Если ты передаешь в вид массив $data, то в нем будет просто $photos, а не $data['photos']
     
  5. 1ncest

    1ncest Постоялец

    Регистр.:
    27 ноя 2007
    Сообщения:
    53
    Симпатии:
    3
    вот покороче будет:
    PHP:
    public function getAlbumPhotosArray($album_id)
        {
        
    $query=$this->db->select("id, file_name, titles")->get_where("photos",array('album_id' => $album_id));
        return 
    $query->result_array();
    }
      
    это модель,осуществляет соединение с базой
     
    --------------------------------------------------------------------------- 
       public function 
    album_foto($album_id)
        {
         
    $data['fotos'] = $this->albums_model->getAlbumPhotosArray($album_id);
         
    $this->load->view('album_foto',$data);
        } 
     
    это контроллер должен передать в файл вида album_foto.php данные idиндефикатор и titles-надпись под фотографией  ,которые для него модель вытащила из базы  
     
    ------------------------------------------------------------------------- 
    и во view что-то типа:
    PHP:
    <?foreach($fotos as $f):?>
    <p><?=$f['file_name']?></p>
    <?endforeach;?>