Foros del Web » Programando para Internet » PHP »

No mostrar error al no reconocer variable

Estas en el tema de No mostrar error al no reconocer variable en el foro de PHP en Foros del Web. Hola!!! Estoy haciendo una web modular y en el index.php tengo un código como este: Código PHP: <?  switch ( $_GET [ "modulo" ]){    case  'articulo' ...
  #1 (permalink)  
Antiguo 11/03/2004, 18:44
Avatar de MateoVasco  
Fecha de Ingreso: julio-2003
Mensajes: 132
Antigüedad: 14 años, 4 meses
Puntos: 0
No mostrar error al no reconocer variable

Hola!!!

Estoy haciendo una web modular y en el index.php tengo un código como este:
Código PHP:
<? 
switch ($_GET["modulo"]){ 
  case 
'articulo'
    
$incluir 'modulos/art.php'
    
$titulo 'Articulo de Prueba'
    break; 
  case 
'descargas'
    
$incluir 'descargas.php'
    
$titulo 'Descargas de archivos'
    break; 

    default: 

    
$incluir 'modulos/home.php'
    
$titulo 'Buyers Manager'

?>
De tal manera que si se introduce en la url http://mipagina/index.php?modulo=articulo reconocerá esa variable "articulo" y la variable "incluir" tomara el valor de una dirección para luego hacer un include.

El problema es que cuando solo se introduce index.php sin ninguna variable para que se valla a home.php, me sale este error:

Notice: Undefined index: modulo in c:\archivos de programa\apache group\apache\htdocs\buyersmanager\index.php on line 2

Qué puedo hacer para solucionar esto???

Gracias!!!
  #2 (permalink)  
Antiguo 11/03/2004, 19:44
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 14 años, 2 meses
Puntos: 41
Puedes verificar primero si se ha inicializado esa variable... si no se ha hecho, le asignas el valor que quieres que tenga por defecto... algo así:
Código PHP:
if(!isset($_GET['modulo'])){
   
$modulo 'descargas';//o lo que quieras que vaya por defecto
}else{
   
$modulo $_GET['modulo'];
}

switch (
$modulo){ 
  case 
'articulo';
//...
//...
//etc, etc, etc. 
saludos

Última edición por jpinedo; 11/03/2004 a las 19:45
  #3 (permalink)  
Antiguo 11/03/2004, 19:50
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 14 años, 2 meses
Puntos: 41
Bueno ésa e suna forma... pero algo que olvidaba decirte es que esa forma de hacer webs modulares no es muy segura... sobretodo si vas a pasar por url los nombres de archivos como en el caso de "descargas" que hace incluir "descargas.php"... te recomiendo este artículo de webstudio que creo que es de lectura obligatoria para cualquiera que quiera hacer una web modular:
http://www.zonaphp.com/articulo34.php

Saludos
  #4 (permalink)  
Antiguo 11/03/2004, 20:54
Avatar de MateoVasco  
Fecha de Ingreso: julio-2003
Mensajes: 132
Antigüedad: 14 años, 4 meses
Puntos: 0
Tienes razón y ya me habí aleido ese artículo de principio a fin, pero me compliqué mucho al tratar de combinarlo con el manejo gráfico. Este código lo saqué de otra página, y como en el caso artículo, así serán todos los módulos. Apenas estoy intentando. Muchas gracias!!!
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 16:56.