Foros del Web » Programando para Internet » PHP »

Problema con consulta

Estas en el tema de Problema con consulta en el foro de PHP en Foros del Web. Hola estimados de antemano agradecerles por su ayuda La consulta es tengo el siguiente codigo : Código PHP: $idProfesor  =  $_GET [ 'idProfe' ];        ...
  #1 (permalink)  
Antiguo 27/06/2008, 08:47
 
Fecha de Ingreso: julio-2003
Mensajes: 154
Antigüedad: 20 años, 10 meses
Puntos: 0
Problema con consulta

Hola estimados de antemano agradecerles por su ayuda

La consulta es tengo el siguiente codigo :

Código PHP:
$idProfesor $_GET['idProfe'];
      
      
$sqlMaterias mysql_query("SELECT asignacion.id_asignacion, asignacion.id_profe, asignaturas.nombre_asig FROM asignacion, asignaturas WHERE id_profe='$idProfesor'") or die (mysql_error());
          while (
$row mysql_fetch_array ($sqlMaterias)){
        
        
$nombreRamo $row['nombre_asig'];
        
$idAsignacion $row['id_asignacion'];
        
        echo 
"<input name=\"idProfe[]\" type=\"hidden\" value=\"$idProfesor\" />$nombreRamo <input name=\"materia[]\" type=\"checkbox\" value=\"$idAsignacion\" /><br>";
            
        
        } 
al tratar de imprimir esta consulta tengo duplicidad en los resultados, como se ve en la consulta estoy consultando a dos tablas las cuales expongo :

Código PHP:
CREATE TABLE `asignacion` (
  `
id_asignacionint(10NOT NULL auto_increment,
  `
id_asigint(10NOT NULL,
  `
id_profeint(10NOT NULL,
  
PRIMARY KEY  (`id_asignacion`)
ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=12 
Código PHP:
CREATE TABLE `asignaturas` (
  `
id_asigint(10NOT NULL auto_increment,
  `
nombre_asigvarchar(255NOT NULL,
  
PRIMARY KEY  (`id_asig`)
ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=
Y la tabla desde donde saco el $idProfesor

Código PHP:
CREATE TABLE `profes` (
  `
id_profeint(10NOT NULL auto_increment,
  `
nombre_profevarchar(255NOT NULL,
  
PRIMARY KEY  (`id_profe`)
ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=
Si alguien me puede dar una orientacion ...

Muchas gracias
__________________
--
Si los arboles dan frutos ......
PORQUE NO ESTUDIARON LOS ARBOLES?
  #2 (permalink)  
Antiguo 27/06/2008, 09:12
 
Fecha de Ingreso: junio-2008
Mensajes: 3
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: Problema con consulta

En la consulta tienes el siguiente error de lógica;

mysql_query("SELECT asignacion.id_asignacion, asignacion.id_profe, asignaturas.nombre_asig FROM asignacion, asignaturas WHERE id_profe='$idProfesor'") or die (mysql_error());

Tienes que relacionar las tablas en la clausula where o haciendo un inner join

mysql_query("SELECT asignacion.id_asignacion, asignacion.id_profe, asignaturas.nombre_asig FROM asignacion, asignaturas WHERE asignacion.id_asig=asignaturas.id_asig and id_profe='$idProfesor'") or die (mysql_error());

ó

mysql_query("SELECT asignacion.id_asignacion, asignacion.id_profe, asignaturas.nombre_asig FROM asignacion inner join asignaturas on asignacion.id_asig=asignaturas.id_asig WHERE id_profe='$idProfesor'") or die (mysql_error());


ahora aqui te seleccionaria tantas asignaciones como se le hayan asignado
  #3 (permalink)  
Antiguo 27/06/2008, 09:20
 
Fecha de Ingreso: julio-2003
Mensajes: 154
Antigüedad: 20 años, 10 meses
Puntos: 0
Respuesta: Problema con consulta

Muchas gracias lbetancourt me sirvio de mucho la ayuda
__________________
--
Si los arboles dan frutos ......
PORQUE NO ESTUDIARON LOS ARBOLES?
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 17:39.