Foros del Web » Programando para Internet » PHP »

Problema con un select con 2 inner joins

Estas en el tema de Problema con un select con 2 inner joins en el foro de PHP en Foros del Web. Hola amigos.. les cuento mi problema aca.. Este codigo que pongo a continuacion es en teoria una busqueda cruzada de 3 tablas.. sin embargo, cuando ...
  #1 (permalink)  
Antiguo 05/03/2010, 09:52
 
Fecha de Ingreso: abril-2007
Ubicación: Tandil, Bs As, Argentina
Mensajes: 106
Antigüedad: 17 años, 7 meses
Puntos: 2
Problema con un select con 2 inner joins

Hola amigos.. les cuento mi problema aca.. Este codigo que pongo a continuacion es en teoria una busqueda cruzada de 3 tablas.. sin embargo, cuando lo hace, el
Código PHP:
mysql_num_rows ($busca
me tira el siguiente error:

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\wamp\www\guille\agr_claseaestudiante.php on line 114

Código PHP:
        <?php
        
// Mostramos las clases activas del alumno.
        
if ($idBusca != 0) {
        echo 
"<table align='center' border='2' bordercolor='#FFFFFF' size='100%'>";
        echo 
"<tr>";
        echo 
"<td>Materia</td>";
        echo 
"<td>Profesor</td>";
        echo 
"<td>A&ntilde;o</td>";
        echo 
"<td>M&oacute;dulo</td>";
        echo 
"</tr>";
        
$busca mysql_query("SELECT Profesor, Materia, Anio, Modulo FROM Clases INNER JOIN Profesores ON Clases.IdProfesor = Profesor.IdProfesor INNER JOIN Materias ON Clases.IdMateria = Materias.IdMateria WHERE IdEstudiante = '$idBusca'");
        
$cantReg mysql_num_rows ($busca);
        for (
$i 0$i $cantReg$i++)
            {
                
$pro mysql_result ($busca$i"Profesor");
                
$mat mysql_result ($busca$i"Materia");
                
$an mysql_result ($busca$i"Anio");
                
$mod mysql_result ($busca$i"Modulo");
                echo 
"<tr>";
                echo 
"<td>$mat</td>";
                echo 
"<td>$pro</td>";
                echo 
"<td>$an</td>";
                echo 
"<td>$mod</td>";
                echo 
"</tr>";
            };
        echo 
"</table>";
            
        }
        
        
?>
Si alguien tiene alguna idea de porque me sale un boolean de la consulta
Código PHP:
$busca mysql_query("SELECT Profesor, Materia, Anio, Modulo FROM Clases INNER JOIN Profesores ON Clases.IdProfesor = Profesor.IdProfesor INNER JOIN Materias ON Clases.IdMateria = Materias.IdMateria WHERE IdEstudiante = '$idBusca'"); 
se los agradeceria..

Saludos!!
  #2 (permalink)  
Antiguo 05/03/2010, 10:11
Avatar de cesarpunk  
Fecha de Ingreso: enero-2008
Ubicación: Lima
Mensajes: 943
Antigüedad: 16 años, 10 meses
Puntos: 9
Respuesta: Problema con un select con 2 inner joins

en primer lugar: has probado tu consulta en el phpmyadmin o algún otro programa? pa saber si tu consulta está bien y que errores genera.

segundo lugar, al mysql_query le falta el otro parámetro que es la cadena de conexion

y en tercer lugar mete el query en una variable $sql e imprimela para que veas lo que te devuelve y asi puedas corregirte solo.

Saludos.
__________________
Quitenme la vida pero no la bebida.
  #3 (permalink)  
Antiguo 05/03/2010, 10:32
 
Fecha de Ingreso: abril-2007
Ubicación: Tandil, Bs As, Argentina
Mensajes: 106
Antigüedad: 17 años, 7 meses
Puntos: 2
Respuesta: Problema con un select con 2 inner joins

Hola cesar, gracias por resopnder..

La consulta esta probada en myadmin y anday el parametro de conexion no es necesario porque ya estoy conectado mas arriba en el codigo, loq ue pegue arriba es solo un fragmento, perdon por no avisar :P

Voy a poner a imprimir la variable a ver que es lo que me trae.. luego comento resultados..

Muchas gracias! :D

Etiquetas: joins, select
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 07:45.