Foros del Web » Programando para Internet » PHP »

Problema con Switch y Bucle

Estas en el tema de Problema con Switch y Bucle en el foro de PHP en Foros del Web. Hola... Tengo el siguiente problema: Código: <? switch ($_GET["pml"]){ for($f=1;$f<=$pml;$f++) { case $f; $incluir = 'web/pml/'.$f,'.php'; $titulo = ' - Portfolio'; break; } } ?> ...
  #1 (permalink)  
Antiguo 19/09/2008, 00:01
 
Fecha de Ingreso: julio-2007
Ubicación: Por ahi...
Mensajes: 84
Antigüedad: 17 años, 4 meses
Puntos: 0
Pregunta Problema con Switch y Bucle

Hola...

Tengo el siguiente problema:

Código:
<?
switch ($_GET["pml"]){
for($f=1;$f<=$pml;$f++)
{
 case $f;
  $incluir = 'web/pml/'.$f,'.php';
    $titulo = ' - Portfolio';
    break;
}
}

?>
Parse error: syntax error, unexpected T_FOR, expecting T_CASE or T_DEFAULT or '}' in :shock: on line 3

En la linea 3...

Alguien tiene ideas ? :shock:

Gracias de antemanos :B

Saludos.
  #2 (permalink)  
Antiguo 19/09/2008, 00:51
 
Fecha de Ingreso: mayo-2007
Mensajes: 348
Antigüedad: 17 años, 6 meses
Puntos: 9
Respuesta: Problema con Switch y Bucle

Buenas

Código PHP:
$pml=$_GET['pml'];

switch (
$pml){
for(
$f=1;$f<=$pml;$f++)
{
 case 
$f;
  
$incluir 'web/pml/'.$f.'.php'// Te faltó un punto despues de la variable
    
$titulo ' - Portfolio';
    break;
}

Saludos!
  #3 (permalink)  
Antiguo 19/09/2008, 08:04
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problema con Switch y Bucle

En realidad el problema es que no se puede tener un for dentro de un switch.
Creo que lográs el efecto que querés haciéndolo así:

Código PHP:
$pml=$_GET['pml'];
for(
$f=1;$f<=$pml;$f++) {
    if (
$pml == $f) {
        
$incluir 'web/pml/'.$f.'.php'// la modificación de Nathan_1979 es correcta
        
$titulo ' - Portfolio';
        break;
    }

Aunque si ese es el caso, sería igual, más rápido y más claro simplemente

Código PHP:
$pml=$_GET['pml'];
$incluir 'web/pml/'.$pml.'.php'
Saludos.
  #4 (permalink)  
Antiguo 19/09/2008, 10:49
 
Fecha de Ingreso: julio-2007
Ubicación: Por ahi...
Mensajes: 84
Antigüedad: 17 años, 4 meses
Puntos: 0
Respuesta: Problema con Switch y Bucle

Cita:
Iniciado por alvlin Ver Mensaje
En realidad el problema es que no se puede tener un for dentro de un switch.
Creo que lográs el efecto que querés haciéndolo así:

Código PHP:
$pml=$_GET['pml'];
for(
$f=1;$f<=$pml;$f++) {
    if (
$pml == $f) {
        
$incluir 'web/pml/'.$f.'.php'// la modificación de Nathan_1979 es correcta
        
$titulo ' - Portfolio';
        break;
    }

Aunque si ese es el caso, sería igual, más rápido y más claro simplemente

Código PHP:
$pml=$_GET['pml'];
$incluir 'web/pml/'.$pml.'.php'
Saludos.
Gracias!

Nop, no me resulta =/

Lo que quiero es se haga eso una web modular, pero que son tantos pml, se me ocurrio hacer una especie de bucle asi...

Código:
$pdi=$_GET['pdi'];
for($f=0;$f<=$pdi;$f++) {
    if ($pdi == $f) {
        $incluir = 'web/pdi/'.$f.'.php';
        $titulo = ' - Portfolio';
        break;
    }
}
$pml=$_GET['pml'];
for($f=0;$f<=$pml;$f++) {
    if ($pml == $f) {
        $incluir = 'web/pml/'.$f.'.php';
        $titulo = ' - Portfolio';
        break;
    }
}
$pwd=$_GET['pwd'];
for($f=0;$f<=$pwd;$f++) {
    if ($pwd == $f) {
        $incluir = 'web/pwd/'.$f.'.php';
        $titulo = ' - Portfolio';
        break;
    }
} 
 ?>
Ahi hay otro. pero hay dos errores, solo me toma el $pwd para abajo y los otros dos es como si no existiera =/...

Y el Default aunque lo ponga es como si no existiera :shock:

Pero no me resulta =/.

¿Alguna idea?

Saludos.
  #5 (permalink)  
Antiguo 19/09/2008, 11:04
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problema con Switch y Bucle

El problema en este caso es bastante claro: en cada paso sobreescribís la variable $incluir

Yo pienso que con esto debería serte suficiente:

Código PHP:
$pml $_GET['pml'];
$pdi $_GET['pdi'];
$pwd $_GET['pwd'];

include(
'web/pdi/'.$pdi.'.php');
include(
'web/pml/'.$pml.'.php');
include(
'web/pwd/'.$pwd.'.php'); 

Dado que de todas formas estás buscando un $f que sea igual que $pml, $pdi o $pwd según el caso.


Saludos.

Saludos.
  #6 (permalink)  
Antiguo 19/09/2008, 17:26
 
Fecha de Ingreso: julio-2007
Ubicación: Por ahi...
Mensajes: 84
Antigüedad: 17 años, 4 meses
Puntos: 0
Respuesta: Problema con Switch y Bucle

Cita:
Iniciado por alvlin Ver Mensaje
El problema en este caso es bastante claro: en cada paso sobreescribís la variable $incluir

Yo pienso que con esto debería serte suficiente:

Código PHP:
$pml $_GET['pml'];
$pdi $_GET['pdi'];
$pwd $_GET['pwd'];

include(
'web/pdi/'.$pdi.'.php');
include(
'web/pml/'.$pml.'.php');
include(
'web/pwd/'.$pwd.'.php'); 

Dado que de todas formas estás buscando un $f que sea igual que $pml, $pdi o $pwd según el caso.


Saludos.

Saludos.
Aham.. Ya entiendo!

Pero buscare otra forma de hacerlo!

GRacias de todas formas!.

Saludos.
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 14:10.