Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/03/2013, 10:02
radge
 
Fecha de Ingreso: enero-2004
Ubicación: here I Am
Mensajes: 437
Antigüedad: 20 años, 4 meses
Puntos: 1
Novato con Code Igniter

Buenas llevo apenas un par de dias con Code Igniter y he realizado el tutorial entero de su página web y después he ojeado varios manuales más. El concepto de MVC como su funcionamiento lo tengo claro pero tengo la siguiente duda.

Tengo el controlador products.php

Código PHP:
<?php
class Products extends CI_Controller {

    public function 
__construct()
    {
        
parent::__construct();
        
$this->load->model('products_model');
    }
        
        
        public function 
index()
        {
    
$data['Products'] = $this->products_model->get_productsHome();
    
$data['title'] = 'Products Home';

    
$this->load->view('templates/header'$data);
    
$this->load->view('products/index'$data);
    
$this->load->view('templates/footer');
        }
        
        
        public function 
get_products()
        {
        
$data['Products'] = $this->products_model->get_productsHome();
        
$this->load->view('products/listProductsHome'$data);
    }
        

}     
?>
Modelo products
Código PHP:
<?
class Products_model extends CI_Model {

    public function 
__construct()
    {
        
$this->load->database();
    }
        

        public function 
get_productsHome()
        {
    
        
$query $this->db->get('productCompare');
    return 
$query->result_array();
        }


        
}
?>
Luego en la carpeta views/products tengo el archivo listProductsHome.php con este contenido

Código PHP:
<?php foreach ($Products as $news_item): ?>


    <h2><?php echo $news_item['productName1'?></h2>
    <div id="main">
        <?php echo $news_item['productName2'?>
    </div>

<?php endforeach ?>

Básicamente hasta aquí hemos creado una vista que recupera los "productos" de la Base de datos y los prepara para mostrar.

Ahora voy al archivo que cargo al iniciar mi URl que es el archivo /views/templates/home.php que tiene el siguiente contenido

Código PHP:
<div class="home">
    <
a href="index.php/products/create">Crear enquesta</a>
    <
hr><br>
    
Ver ultimas "preguntas"<br>
    </
div
Y dentro de aquí intento poner el resultado de la vista anterior pero no se muy bien como , he intentado a instanciar un objeto Productos y llamar al método get_products sin éxito.

He probado algo como esto sin éxito
Código PHP:
    $products = new Products();
    
$products::get_products(); 
Voy bien encaminado ? Alguna ayuda / sugerencia ?

Gracias
__________________
Nuevo foro sobr el mundo del motor - Renault foro
http://www.renaultforo.com

Última edición por radge; 03/03/2013 a las 10:19