Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] PHP OO ExtJs, PHP, postgreSQL Undefined variable: start

Estas en el tema de ExtJs, PHP, postgreSQL Undefined variable: start en el foro de PHP en Foros del Web. Hola, tengo el siguiente mensaje al tratar de cargar los datos de una tabla en un gridPanel en el framework ExtJs, que en si no ...
  #1 (permalink)  
Antiguo 03/04/2013, 22:59
 
Fecha de Ingreso: mayo-2012
Mensajes: 4
Antigüedad: 12 años, 5 meses
Puntos: 1
ExtJs, PHP, postgreSQL Undefined variable: start

Hola, tengo el siguiente mensaje al tratar de cargar los datos de una tabla en un gridPanel en el framework ExtJs, que en si no puedo decir si es un error o no ya que no me pinta nada de rojo
Cita:
<br />
<b>Notice</b>: Undefined variable: start in <b>C:\xampp\htdocs\server\prueba_final\cn\nCursos. php</b> on line <b>38</b><br />
{"success":true,"total":4,"data":[{"idcursoC":"1","nombrecursoC":"Basico","des_curso C":"Indispensable","duracionC":"36 horas"},{"idcursoC":"2","nombrecursoC":"Panorama", "des_cursoC":"Fundamentos Basicos ","duracionC":"36 horas"},{"idcursoC":"3","nombrecursoC":" Experiencia","des_cursoC":"Permite comprender mejor ","duracionC":"24 horas"},{"idcursoC":"4","nombrecursoC":"dffd","des _cursoC":"df","duracionC":"dffd"}]}
Ese mensaje lo pinta en el firebug, donde se ve claramente que se estan recibiendo los datos de mi tabla cursos en POSTGRESQL

y este es el codigo de mi archivo nCursos.php

Código:
<?php

include("../cd/dCursos.php");

//$vs_var1 = isset($_REQUEST['vs_var1']) ? $_REQUEST['vs_var1'] : null;
//$vs_var2 = isset($_REQUEST['vs_var2']) ? $_REQUEST['vs_var2'] : null;

$obj_nCls = new nClass;

switch ($_REQUEST['funcion']) {
    case 'nCursosList':
        $obj_nCls->nCursosList();
        break;
    default:
        echo 'tu funcion no esta en la capa de negocios';
}

class nClass {

    function nCursosList() {
        $obj_dCls = new dClass();
        $vs_rs = "";
        $vs_rs = $obj_dCls->dCursosList();
        while ($vs_row = pg_fetch_array($vs_rs)) {
            $idcursoC = $vs_row[0];
            $nombrecursoC = $vs_row[1];
            $des_cursoC = $vs_row[2];
            $duracionC = $vs_row[3];

            $data[] = array('idcursoC' => $idcursoC,
                'nombrecursoC' => $nombrecursoC,
                'des_cursoC' => $des_cursoC,
                'duracionC' => $duracionC);
        }
        $paging = array('success' => true,
            'total' => count($data),
            'data' => array_splice($data, $start)); //aqui esta la linea 38
        echo json_encode($paging);
    }

}

?>
y aqui esta el codigo de mi archivo pCursos.php que seria mi ventana principal en donde deberia cargar el gridPanel con todos los datos pero que solo me pinta el gridPanel con el nombre de las columnas

Código:
Ext.onReady(function(){
    /*store*/
    var store=new Ext.data.JsonStore({
        root:'data',
        idProperty:'threadid',
        totalProperty:'total',
        proxy:new Ext.data.HttpProxy({
            url:'../cn/nCursos.php?'
        }),
        fields:['idcursoC','nombrecursoC','des_cursoC','duracionC'],
        baseParams:{
            funcion:'nCursosList'
        }
    });
   
    /*modelo_grid*/
    var xg=Ext.grid;
    var sm=new xg.CheckboxSelectionModel();
    var cm=new Ext.grid.ColumnModel({
        defaults:{
            sortable:true
        },
        columns:[
            {
                header:'ID CURSO',
                dataIndex:'idcursoC',
                sortable:true,
                width:70,
                size:12
            },
            {
                header:'INOMBRE',
                dataIndex:'nombrecursoC',
                sortable:true,
                width:120
                
            },
            {
                header:'DESCRIPCION',
                dataIndex:'des_cursoC',
                sortable:true,
                width:250
                
            },
            {
                header:'DURACION(horas)',
                dataIndex:'duracionC',
                sortable:true,
                width:80
               
            }
        ]
    });
    /*grid*/
    var grid_Cursos=new Ext.grid.GridPanel({
        store:store,
        id:'grid_Cursos',
        tabIndex:51,
        trackMouseOver:false,
        disableSelection:true,
        loadMask:true,
        height:345,
        cm:cm,
        border:true,
        sm:sm,
        stripeRows:true
    });
     
    /*Window*/
   win_Curso=new Ext.Window({
       id:'win_Curso',
       title:'Mantenimiento de Cursos',
       layout:'fit',
       modal:false,
       width:550,
       height:350,
       autoScroll:false,
       maximizable:false,
       plain:true,
       items:grid_Cursos,
       border:false,
       draggable:false,
       resizable:false,
       closable:true
   });
   win_Curso.show();
   store.load();
});
Lo curioso es que copie todo este proyecto a mi laptop y funciona perfectamente asi que estoy pensando que talvez es algun problema con mis archivos php.ini o httpd.conf pero aun asi el problema es que aunque no me muestra error no me esta pintando los resultados de la consulta sql en el gridPanel

Espero que puedan ayudarme
Muchas gracias
  #2 (permalink)  
Antiguo 03/04/2013, 23:45
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 16 años, 3 meses
Puntos: 2237
Respuesta: ExtJs, PHP, postgreSQL Undefined variable: start

El mensaje es claro, no has definido la variable $start, por tanto, el comportamiento de PHP será impredecible.
__________________
- León, Guanajuato
- GV-Foto
  #3 (permalink)  
Antiguo 03/04/2013, 23:52
 
Fecha de Ingreso: mayo-2012
Mensajes: 4
Antigüedad: 12 años, 5 meses
Puntos: 1
Respuesta: ExtJs, PHP, postgreSQL Undefined variable: start

Cita:
Iniciado por Triby Ver Mensaje
El mensaje es claro, no has definido la variable $start, por tanto, el comportamiento de PHP será impredecible.
Jeje, si obviamente que lo sé. Bueno en si el ejemplo que tengo es asi. Y por ello me parece raro que en mi otro ordenador funcione sin problemas (exactamente el mismo codigo). En todo caso que solucion podria darle?.
  #4 (permalink)  
Antiguo 04/04/2013, 01:27
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 16 años, 3 meses
Puntos: 2237
Respuesta: ExtJs, PHP, postgreSQL Undefined variable: start

Cita:
Iniciado por aaac209
Jeje, si obviamente que lo sé.
No era tan obvio, puesto que comenzaste diciendo esto:

Cita:
Hola, tengo el siguiente mensaje al tratar de cargar los datos de una tabla en un gridPanel en el framework ExtJs, que en si no puedo decir si es un error o no ya que no me pinta nada de rojo
Y bueno, más que un error, es una advertencia (AKA Warning) que no impide que PHP siga su ejecución "normal".

Cita:
Iniciado por aaac209
Y por ello me parece raro que en mi otro ordenador funcione sin problemas (exactamente el mismo codigo).
No es raro, seguramente en tu otra computadora PHP está configurado para omitir los mensajes de error, que son los causantes de que el Javascript no pueda ejecutarse, por la simple y sencilla razón de que es código HTML con el mensaje dentro de tu script.

De hecho, supongo que el mensaje hace que quede un HTML final mal formado y por eso no ves "que se pinte de rojo".

Cita:
Iniciado por aaac029
En todo caso que solucion podria darle?
a) Hacer lo correcto, que es asegurarte de tener inicializada la variable con un valor adecuado; no sé decirte cual sería ese valor, porque desconozco completamente lo que estás haciendo.

b) Hacer algo incorrecto, tapándole el ojo al macho (pedirle a PHP que se haga de la vista gorda):
b.1) Pon una arroba en la línea donde se genera el error. Ejemplo: @echo $variable_no_definida;
b.2) Configura tu PHP para que no muestre mensajes de error, ya sea modificando php.ini o incluyendo error_reporting(0); al inicio de tu script.
__________________
- León, Guanajuato
- GV-Foto
  #5 (permalink)  
Antiguo 04/04/2013, 21:35
 
Fecha de Ingreso: mayo-2012
Mensajes: 4
Antigüedad: 12 años, 5 meses
Puntos: 1
Respuesta: ExtJs, PHP, postgreSQL Undefined variable: start

Cita:
Iniciado por Triby Ver Mensaje

a) Hacer lo correcto, que es asegurarte de tener inicializada la variable con un valor adecuado; no sé decirte cual sería ese valor, porque desconozco completamente lo que estás haciendo.

b) Hacer algo incorrecto, tapándole el ojo al macho (pedirle a PHP que se haga de la vista gorda):
b.1) Pon una arroba en la línea donde se genera el error. Ejemplo: @echo $variable_no_definida;
b.2) Configura tu PHP para que no muestre mensajes de error, ya sea modificando php.ini o incluyendo error_reporting(0); al inicio de tu script.
Bueno, muchas gracias opte por hacer lo correcto, hice lo siguiente dentro de mi funcion nCursosList():

Código:
$start=isset($_REQUEST['start']) ? $_REQUEST['start']:0;
Con ello queda solucionado mi problema, pero de todos modos creo que seria necesario configurar mi archivo php.ini para evitar problemas a futuro. Muchas gracias

Etiquetas: extjs, postgresql, resultados, select, sql, start, tabla, undefined, variable
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 21:15.