Comunidad de diseño web y desarrollo en internet online

problema $_GET

Citar            
MensajeEscrito el 31 Mar 2015 11:30 am
Tengo una página en la que muestro toda la información en una misma página "index.php" a través del $_GET['id'] meto el contenido que quiero mostrar con includes. Si pulso al menú "INICIO" va a "index.php?id=inicio" y si pulso al menú "CONTACTO" va a "index.php?id=contacto". El problema que tengo es que cuando entro al "index.php" al principio, sin pulsar en ningún menú, me muestra mensajes de error diciendo que el id no está definido. ¿Cómo puedo hacer para que al entrar al index por primera vez sin pulsar ningún menú se me vea el contenido del inicio?
Pongo un pequeño ejemplo del código:

Código PHP :

if($_GET['id'] == 'inicio'){
include 'inicio.php';
}
elseif($_GET['id'] == 'contacto'){
include 'contacto.php';
}


P.D.: Espero haber expresado bien mi duda.

Por anton1o1982

5 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 31 Mar 2015 04:04 pm
Saludos
una solución que pudieras utilizar es el "@", no se si sea la solución correcta pero yo la he utilizado para evitar que PHP no devuelva los errores si una llamada a una función causa un error en tiempo de ejecución. También bloquea los posibles warning, un ejemplo simple seria llamar a un archivo el cual no existe:
require('contacto.php'), esto de desplegaría un error en pantalla, pero si colocar el signo de "@": @require('contacto.php');, ya no despliega el error.

Atte.: Mario

Por mario22121985

88 de clabLevel



 

chrome
Citar            
MensajeEscrito el 31 Mar 2015 06:19 pm
Ya encontré la solución en otro foro. Solo tenía que utilizar esto:

Código PHP :

if(isset($_GET['id'])){

}
else{

}

Por anton1o1982

5 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 31 Mar 2015 06:44 pm
Mejor usa empty().

Cumple la misma función que isset() pero la diferencia es que además controla que esté vacía.

De la forma que sugieres, alguien podría eliminar el valor del parámetro id en la URL e isset() sería verdadero pero aún así no cargaría ningún contenido, ni siquiera el inicio:

Código PHP :

if (!empty($_GET['id'])) {
// cargar contenido señalado por $_GET['id']
} else {
// cargar contenido del inicio
}

Por DriverOp

Claber

2510 de clabLevel



 

opera

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.