Foros del Web » Programando para Internet » PHP »

While anidados

Estas en el tema de While anidados en el foro de PHP en Foros del Web. Hola compañeros he visto que ya hantratado temas similares pero de todas las soluciones que vi no me funciono ninguna miren a continuacion les presento ...
  #1 (permalink)  
Antiguo 10/06/2010, 17:00
 
Fecha de Ingreso: septiembre-2008
Mensajes: 152
Antigüedad: 15 años, 7 meses
Puntos: 1
While anidados

Hola compañeros he visto que ya hantratado temas similares pero de todas las soluciones que vi no me funciono ninguna miren a continuacion les presento mi codigo esta muy sencillo (digamos que es un ejemplo y si funciona ya lo aplico a lo que necesito en realidad)

Código PHP:
$d=5;
$i=1;
$f=10;
$x=1;
while(
$d != $i)
{
    while(
$f != $x)
    {
        echo 
$x.'<br>';
        
$x++;
    }
    
$i++;

Con este ejemplo yo quiero obtener la numeracion del 1 al 9 4 veces pero no entiendo por que no lo hace, lo que observo es que me da la numeracion del 1 al 9 solo una vez, no estiendo porque pasa esto como que solo esta funcionando el primer while una vez y el segundo while si termina su ciclo pero no permite al primer while continuar.

Espero me puedan ayudar en otros temas que hacian referencia a Whiles anidados vi una solucion que era mysql_data_seek pero esa solucion aplicaba por hacian consultas a base de datos, pero en este caso mi problema no tiene nada que ver con las bases de datos

Espero me puedan ayudar se que parece bastante sencillo pero no logro hacerlo andar. De antemano muchas gracias a todos
Saludos
  #2 (permalink)  
Antiguo 10/06/2010, 17:11
Avatar de juanito1712  
Fecha de Ingreso: mayo-2010
Ubicación: Valencia
Mensajes: 1.124
Antigüedad: 14 años
Puntos: 66
Respuesta: While anidados

mira a ver si esto te viene bien
Código PHP:
for ($j=1$j<=4$j++){
        for (
$k=1$k<=9$k++){
            print(
$k);
        }    
    } 
y en calase me metieron en la cabeza que el valor que varia va siempre a la izquierda, no se si sera verdad o capricho de mi profesora por seguir un estandar, pero si afecta para algo ese podría ser sinónimo a, "pero si lo tengo todo bien y no funciona"
  #3 (permalink)  
Antiguo 10/06/2010, 17:18
Avatar de juanito1712  
Fecha de Ingreso: mayo-2010
Ubicación: Valencia
Mensajes: 1.124
Antigüedad: 14 años
Puntos: 66
Respuesta: While anidados

vale ya lo veo, una vez tu while interno imprime sus valores y llega a 9 sale al externo lo suma uno resultando dos y vuelve a entrar, encontrandose otra vez en nueve volviendo a salir para ser un 3 y volviendo a entrar y volviendo a salir asi sucesivamente hasta 4

ademas del
$i++;
haz un
$x=1;
para inicializar el while interno y que funcione correctamente
o pásate a los for que parece que den miedo pero son muchísimo mas cómodos y deja los while para cuando realmente los necesites
  #4 (permalink)  
Antiguo 10/06/2010, 17:20
 
Fecha de Ingreso: septiembre-2008
Mensajes: 152
Antigüedad: 15 años, 7 meses
Puntos: 1
Respuesta: While anidados

Ok gracias por tu comentario, El problema es que forsozamente necesito hacerlo con While, ojala me puedan ayudar
  #5 (permalink)  
Antiguo 10/06/2010, 17:22
 
Fecha de Ingreso: septiembre-2008
Mensajes: 152
Antigüedad: 15 años, 7 meses
Puntos: 1
Respuesta: While anidados

GRACIAS !!!!!!!!!!!!!!!!!!!!!!!

Eso era simple pero no me di cuenta muchas gracias por la observacion. Con esto puedo dar por solucionado el tema.

GRACIAS !!!!!!!!!!!!!!!!!!!!!! NUEVAMENTE
  #6 (permalink)  
Antiguo 10/06/2010, 17:30
Avatar de juanito1712  
Fecha de Ingreso: mayo-2010
Ubicación: Valencia
Mensajes: 1.124
Antigüedad: 14 años
Puntos: 66
Respuesta: While anidados

no hay de que, que menos para lo que me ha ayudado a mi tambien este foro ;)

Etiquetas: anidados
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 20:12.