Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/03/2003, 16:27
ZeroZ
 
Fecha de Ingreso: junio-2002
Ubicación: España
Mensajes: 348
Antigüedad: 21 años, 10 meses
Puntos: 8
Varias consultas anidadas

cuando intento hacer varias consultas anidadas solo me funciona la primera, por ejemplo en este caso no me sale nada ke este por debajo del segundo while, supongo ke es porke el "puntero" ke indica las posiciones esta siendo usado por el primer bucle while.
Como arreglar esto para ke visualice un campo del resultado de una consulta y otro campo del resultado de otra consulta de otra tabla distinta.

Código PHP:
<?
$con
="SELECT * FROM test where codtest='$codigo'";
$resultado=mysql_query($conconectar());
while(
$fila=mysql_fetch_row($resultado)){
    for(
$i=0;$i<$fila[3];$i++){
        
$con2="select * from preguntas where codtest='$codigo' and numpreg='$fila[3]'";
        
$resultado2=mysql_query($con2conectar());
        while(
$fila2=mysql_fetch_row($resultado2)){
                                 echo 
$fila[0]."<br>".$fila2[1];
        }                     
    }


mysql_free_result($resultado);?>
recurro a esta solucion ya que si intento hacer todo en una sola consulta con cruce de tablas no funciona, este es el caso:

Código PHP:
$con="SELECT test.codtest, preguntas.codtest, opciones.codtest FROM test, preguntas, opciones 
where test.codtest='$codigo' and preguntas.numpreg='$i' and test.codtest=preguntas.codtest 
and test.codtest=opciones.codtest"
;
$resultado=mysql_query($conconectar());
while(
$fila=mysql_fetch_row($resultado)){
       echo 
$fila[0];

tampoco me funcionan expresiones del tipo select t.* from tabla t where.... que en cualquier gestor de bases de datos funciona. Supongo que fallo en algo.

Bueno espero que me podais ayudar.
Saludos