Foros del Web » Programando para Internet » PHP »

Inconvenientes con isset()

Estas en el tema de Inconvenientes con isset() en el foro de PHP en Foros del Web. Hola chicos. El tema es que tengo problemas con el uso de isset(). El siguiente script trata de que el sitio muestre ciertas páginas en ...
  #1 (permalink)  
Antiguo 09/04/2013, 00:38
 
Fecha de Ingreso: abril-2012
Ubicación: Argentina
Mensajes: 215
Antigüedad: 12 años, 6 meses
Puntos: 2
Busqueda Inconvenientes con isset()

Hola chicos. El tema es que tengo problemas con el uso de isset().

El siguiente script trata de que el sitio muestre ciertas páginas en 2 partes: una izquierda llamada "column" (donde hay un submenú) y la derecha "content" y estos están contenidos en array en una clase.

Todo funciona bien hasta que se hace clic en algún tab del menú superior, por ejemplo, Tab Two (que solo muestra el "content") y luego regreso al Tab One (tendría que mostrar como al principio su "column" y "content"; y la falla es que solo muestra el "content")====> Creo que el problema es el uso de isset()

Demo: http://pruebasconjqueryarg.p.ht/

Script específico del supuesto problema con el uso de isset():

Código:
public static function getColumn($file = null) {
    if (array_key_exists($file, self::$router) && isset(self::$router[$file]['column'])) {
        ob_start();
		is_file(self::$router[$file]['column']);
        require_once(self::$router[$file]['column']);
        return ob_get_clean();
    }
}
Script completo:

Código:
class Helper {	

	private static $router = array (	
	
    '/' => array(
        'column' => 'columns/tabOne/columnA.php',
        'content' => 'content/tabOne/contentA.php'
    ),
    '/index' => array(
        'column' => 'columns/tabOne/columnA.php',
        'content' => 'content/tabOne/contentA.php'
    ),
	 '/contentAtabOne' => array(
        'column' => 'columns/tabOne/columnA.php',
        'content' => 'content/tabOne/contentA.php'
    ),
	 '/contentBtabOne' => array(
        'column' => 'columns/tabOne/columnA.php',
        'content' => 'content/tabOne/contentB.php'
    ),
    '/tabTwo' => array(    
		'content' => 'content/tabTwo.php'		
    ),			
     '/tabThree' => array(        
        'content' => 'content/tabThree.php'
    ),
	'/tabFour' => array(       
        'content' => 'content/tabFour.php'
    )

);


public static function getColumn($file = null) {
    if (array_key_exists($file, self::$router) && isset(self::$router[$file]['column'])) {
        ob_start();
		is_file(self::$router[$file]['column']);
        require_once(self::$router[$file]['column']);
        return ob_get_clean();
    }
}


public static function getContent($file = null) {
    if (array_key_exists($file, self::$router) && is_file(self::$router[$file]['content'])) {
        ob_start();
        require_once(self::$router[$file]['content']);
        return ob_get_clean();
    }
}


}
mikehove.- Vivir es un desafío y es solo para valientes!
  #2 (permalink)  
Antiguo 09/04/2013, 01:19
Avatar de zalito12  
Fecha de Ingreso: noviembre-2011
Ubicación: Coruña, España
Mensajes: 430
Antigüedad: 13 años
Puntos: 67
Respuesta: Inconvenientes con isset()

¿Que pretendes con esta asignación? getColumn($file = null)
Te diría que hicieses un par de var_dump() para ver los contenidos del array.

Ah, y la última línea la puedes poner en la firma, así no hace falta que la escribas siempre :)
  #3 (permalink)  
Antiguo 09/04/2013, 11:19
 
Fecha de Ingreso: abril-2012
Ubicación: Argentina
Mensajes: 215
Antigüedad: 12 años, 6 meses
Puntos: 2
Busqueda Respuesta: Inconvenientes isset()

Hola zalito12.

Esta asignación "($file = null)" es para no colocarle ningún valor.

Intenté lo que dices, el problema lo sigo teniendo.

Cuestión que al principio, cuando se ve el "Tab One", está todo bien. Cuando voy a otro y regreso al "Tab One" ya no se ve la parte del "column" donde se veía el submenú.

Demo que demuestra el defecto:
http://jquerytest.zxq.net/

Descarga de archivo:
http://www.mediafire.com/download.php?zotek8b4vwr4b40

¿Habrá algún otro método para solucionar este error?

Un Dato: Funciona en ie 8, pero no en mozilla y en chrome.


mikehove- "Vivir es un desafío y es solo para valientes"

Última edición por mikehove; 09/04/2013 a las 11:26 Razón: agregar info
  #4 (permalink)  
Antiguo 09/04/2013, 12:17
Avatar de zalito12  
Fecha de Ingreso: noviembre-2011
Ubicación: Coruña, España
Mensajes: 430
Antigüedad: 13 años
Puntos: 67
Respuesta: Inconvenientes con isset()

Si funciona en unos navegadores y no en otros no es problema de php, php se ejecuta en el servidor.
Será html, js o algo así
__________________
Dicen que las personas piensan en su lengua materna, yo lo hago en PHP
  #5 (permalink)  
Antiguo 10/04/2013, 15:09
 
Fecha de Ingreso: abril-2012
Ubicación: Argentina
Mensajes: 215
Antigüedad: 12 años, 6 meses
Puntos: 2
Respuesta: Inconvenientes con isset()

Gracias zalito12!

mikehove,. Vivir es un desafío y solo para valientes!

Etiquetas: php+ajax, php+arrays, php+basedatos
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:12.