Foros del Web » Programando para Internet » PHP » CodeIgniter »

Codeigniter + Xajax

Estas en el tema de Codeigniter + Xajax en el foro de CodeIgniter en Foros del Web. Amigos tengo un problema con la carga de un modelo desde un controlador que utiliza XAJAX , bajo el framework Codeigniter. Tengo 1 modelo : ...
  #1 (permalink)  
Antiguo 18/09/2008, 11:03
 
Fecha de Ingreso: noviembre-2003
Ubicación: mar del plata
Mensajes: 107
Antigüedad: 20 años, 5 meses
Puntos: 0
Codeigniter + Xajax

Amigos tengo un problema con la carga de un modelo desde un controlador que utiliza XAJAX , bajo el framework Codeigniter.

Tengo 1 modelo : ubicacionmodel
Tengo 1 controlador : Blog

Desde mi blog, cargo la libreria xajax, todo perfecto. Pero cuando quiero abrir un modelo, $this->load->model('ubicacionmodel'); , no funciona. Si intento abrirlo antes de llamar a $this->xajax->processRequest(); me aparece un cartel en el navegador asi :

Código:
Output has already been sent to the browser at C:\Servidor\WWW\ciprojects\empresas\system\application\models\ubicacionmodel.php:61. Please make sure the command $xajax->processRequest() is placed before this.
Parece ser que me esta retando porque intento conectarme a la base de datos antes del processRequest(); bueno , haciendole caso, y abriendo el modelo despues del processRequest(); , no hace nada =). Y nada es nada jaja. Desde la función xajax intento abrir el modelo y utilizar un metodo del mismo . ej:

$p = $this->ubicacionmodel->getprovincia(1);

bueno, deja de funcionar el xajax y no devuelve ningun resultado. No arroja errores, ni nada.

CODIGO DEL CONTROLADOR:
Código PHP:
class Blog extends Controller {

    function 
Blog()
    {
        
parent::Controller();    
        
$this->load->library('xajax');         
    }
    
    function 
index(){
        
        
        
        
$this->load->helper('my_html'); 
    
        
$this->xajax->registerFunction(array('agregaProvincia',&$this,'agregaProvincia'));
        
        
$this->xajax->processRequest();
        
        
$this->load->model('ubicacionmodel');
        
        
$data['xajax_js'] = $this->xajax->getjavascript($this->config->slash_item('base_url'));
        
        
$this->load->view('test_modelajax',$data);  
    }
    
    function 
agregaProvincia(){

        
$objResponse = new xajaxResponse();

        
$p $this->ubicacionmodel->getprovincia(1);

        
$objResponse->assign("s1","value"$p);
                        
        return 
$objResponse;
    }

CODIGO DEL MODELO:
Código PHP:
class Ubicacionmodel extends Model {
    
    function 
Ubicacionmodel()
    {
        
parent::Model();

    }

    function 
getprovincias()
    {
        return 
1;

    }
    
    function 
getprovincia($cod){
 
        return 
$cod;
    }

    function 
getcomarcas($provincia)
    {
        return 
1;
    }

    function 
getpoblaciones($comarca)
    {
        return 
1;
    }

La vista calculo yo que no viene al caso, simplemente carga el xajax y lleva un input llamado s1. Es para probar si funciona. Va todo correcto, hasta que intento moverme con un modelo de datos.

Bueno un abrazo a todos, espero me puedan ayudar.

Ale.
__________________
Ale
  #2 (permalink)  
Antiguo 19/09/2008, 13:05
 
Fecha de Ingreso: noviembre-2003
Ubicación: mar del plata
Mensajes: 107
Antigüedad: 20 años, 5 meses
Puntos: 0
Respuesta: Codeigniter + Xajax

Amigos no se que pasaba : Pero subo el load del modelo y ahora funciona jaja =)


Código:
$this->load->model('ubicacionmodel'); # esto es lo que subi en esta posición
		
    	$this->xajax->registerFunction(array('agregaProvincia',&$this,'agregaProvincia'));
$this->xajax->processRequest();
$data['xajax_js'] = $this->xajax->getjavascript($this->config->slash_item('base_url'));
		
$this->load->view('test_modelajax',$data);
se ve que el processRequest(); hay que ubicarlo debajo. Lo raro es que no me tira ahora errores de header. Estoy confundido,

un abrazo, espero que les sirva.

ale.
__________________
Ale
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:32.