Foros del Web » Programando para Internet » PHP »

if....elseif... :S

Estas en el tema de if....elseif... :S en el foro de PHP en Foros del Web. Hola, tengo un menu el cual he echo mediante las sentencias,if y elseif y con la auda de include. es este el codigo: <? if($id==""){ ...
  #1 (permalink)  
Antiguo 28/12/2004, 16:27
 
Fecha de Ingreso: noviembre-2004
Mensajes: 149
Antigüedad: 19 años, 4 meses
Puntos: 0
if....elseif... :S

Hola,
tengo un menu el cual he echo mediante las sentencias,if y elseif y con la auda de include.
es este el codigo:
<?
if($id==""){
include("noticia.php");
}
elseif($id=="1"){
include("afiliate.php");
}
elseif($id=="2"){
include("contacto.php");
}
elseif($id=="3"){
include("foro.php");
}
elseif($id=="4"){
include("programas.php");
}
elseif(($id=="4") && ($secc="antivirus")){
include("antivirus.php");
}
elseif(($id=="4") && ($secc=="diseno")){
include("diseno.php");
}
elseif(($id=="4") && ($secc="editores")){
include("editores.php");
}
elseif(($id=="4") && ($secc="audio")){
include("audio.php");
}
elseif(($id=="4") && ($secc="rippers")){
include("rippers.php");
}
elseif(($id=="4") && ($secc="grabacion")){
include("grabacion.php");
}

elseif(($id=="5") && ($secc="peliculas")){
include("peliculas.php");
}
elseif(($id=="5") && ($secc="juegos")){
include("juegos.php");
}
elseif(($id=="5") && ($secc="series")){
include("series.php");
}
elseif(($id=="5") && ($secc="musica")){
include("musica.php");
}
?>

El problema esque cuando clciko encima de editores o rippers, no me va a editores.php, ni rippers.php sino a programas.php
  #2 (permalink)  
Antiguo 28/12/2004, 16:52
 
Fecha de Ingreso: noviembre-2003
Mensajes: 2
Antigüedad: 20 años, 5 meses
Puntos: 0
Buenas, pq no usas switch para las secciones de tu web, en vez de usar tanto if y else?...

como una cosa asi

Código PHP:
<? 
   
switch(variable) {
   default:
   
aqui por si en la url no ha pedido nada
   
break:
   case 
"principal":
   
cosas para principal
   
break;
}
algo asi y despues ocupas los if y elses (claro que mucho menos) busca esta funcion en php.net ;) es bien util.

Adios
  #3 (permalink)  
Antiguo 28/12/2004, 17:01
 
Fecha de Ingreso: noviembre-2004
Mensajes: 149
Antigüedad: 19 años, 4 meses
Puntos: 0
ok, gracias, ya lo solucione, gracia spor lo del switch
  #4 (permalink)  
Antiguo 20/01/2005, 08:42
 
Fecha de Ingreso: enero-2005
Ubicación: Valparaiso - Chile
Mensajes: 116
Antigüedad: 19 años, 3 meses
Puntos: 0
Tenia razon el amigo, en ese caso es mejor un switch.

En todo caso, por si programas algo parecido alguna otra vez, el codigo no te funcionaba porque

elseif($id=="4"){ <<<----- si se tiene antivirus, dise;o o cualquier otra cosa marcada y el $id 4, siempre este elseif se cumple, por eso siempre te llevaba a programas.php.
Lo que deberias haber hecho era sacar el include("programas") y ponerlo al final como si $secc estuviera vacio o no existiera, cosa de que primero consultara $secc y si no habia nada, fuera a programas.
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:40.