Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/09/2011, 01:26
roxguel
 
Fecha de Ingreso: mayo-2009
Ubicación: Los Cerrillos
Mensajes: 5
Antigüedad: 15 años
Puntos: 0
Pregunta Un "while" dentro de otro, y necesito que cambien las variables

Hola, tengo un grave problema con PHP y les paso a explicar cual es, tomen asiento jejep...

Básicamente mi idea es crear una tabla de MySQL por cada artista musical que tengo registrado en otra tabla MySQL, pero ese no es el problema, eso ya esta hecho, el problema aparece cuando quiero que se vean en la web les muestro con un ejemplo que es lo que quiero hacer:

Originariamente yo tenia:

Código PHP:
Ver original
  1. while($rows = mysql_fetch_array($artistas))
  2.                 {
  3.                   echo "<tr>";
  4.                   echo "<td align='center'><img src='http://" . $rows['imagen'] . "'></td>";
  5.                   echo "</tr><tr>";
  6.                   echo "<td align='center'>- " . $rows['artista'] . " -</td>";
  7.                   echo "</tr>";
  8.                   echo "<tr>";
  9.                   echo "<td>";
  10.                   echo "</td>";
  11.                   echo "</tr>";
  12.                   echo "<tr><td><img src='http://locuraurbana.com/images/divisor1.png'></td></tr>";
  13.                 }

Y entre la linea 9 y 10 quiero poner:
Código PHP:
Ver original
  1. while($row = mysql_fetch_array($cancion))
  2. {
  3. echo "".$row['cancion']. "<br>" ;
  4. }
habiendo antes definido:
Código PHP:
Ver original
  1. $artistas = mysql_query("SELECT * FROM artistas order by codigo desc");
  2. $cancion = mysql_query("SELECT * FROM mato");
¿Ven el problema?, esta en que siempre me mostrara para todos los "artistas" la mismas "cancion".

Yo creo que el problema se solucionaria si pudiera poner la variable " $rows['artista'] " en:
Código PHP:
Ver original
  1. while($row = mysql_fetch_array(mysql_query("SELECT * FROM $rows['artista']")))
  2.                                     {
  3.                                         echo "".$row['cancion']. "<br>" ;
  4.                                     }

Que a su vez quedaria asi:

Código PHP:
Ver original
  1. $artistas = mysql_query("SELECT * FROM artistas order by codigo desc");
  2. while($rows = mysql_fetch_array($artistas))
  3.                 {
  4.                   echo "<tr>";
  5.                   echo "<td align='center'><img src='http://" . $rows['imagen'] . "'></td>";
  6.                   echo "</tr><tr>";
  7.                   echo "<td align='center'>- " . $rows['artista'] . " -</td>";
  8.                   echo "</tr>";
  9.                   echo "<tr>";
  10.                   echo "<td>";
  11.                                    
  12.                                     while($row = mysql_fetch_array(mysql_query("SELECT * FROM $rows['artista']")))
  13.                                     {
  14.                                         echo "".$row['cancion']. "<br>" ;
  15.                                     }                                  
  16.                  
  17.                   echo "</td>";
  18.                   echo "</tr>";
  19.                   echo "<tr><td><img src='http://locuraurbana.com/images/divisor1.png'></td></tr>";
  20.                 }

La verdad no conozco a nadie que sepa del tema, por eso recuro a internet, soy muy novato en esto de la programacion, espero que puedan ayudarme..