Foros del Web » Programando para Internet » PHP »

imprimir consulta multiple

Estas en el tema de imprimir consulta multiple en el foro de PHP en Foros del Web. tengo semanas buscando como hacer para mostrar la consulta que tengo en base de datos y nada que me da necesito sus ayudas! me estoy ...
  #1 (permalink)  
Antiguo 17/06/2012, 22:49
 
Fecha de Ingreso: abril-2011
Mensajes: 52
Antigüedad: 13 años
Puntos: 0
Exclamación imprimir consulta multiple

tengo semanas buscando como hacer para mostrar la consulta que tengo en base de datos y nada que me da necesito sus ayudas! me estoy volviendo loco dia tras dia busco de una u otra forma y nada!

al momento de imprimir me sale como si me imprimiera pero me sale asi!



este es mi codigo! he probado con INNER JOIN con LEFT RIGHT pero nada!!!!

aca dejo el codigo aunque sea pa que me muestre el nombre pero no me lo hace parece como vacio y ya tiene informacion en bd!
Código PHP:
<?PHP        

        
include('config.php');
    

   
        
$conexion mysql_connect("localhost","root","")
        or die (
"Fallo la conexion con la base de datos <br>");
       
        
mysql_select_db("sistema")
        or die (
"No se puede seleccionar la base de datos<br>");
      
       
        
$instruccion 'SELECT alumno.nombre, grado.ano FROM alumno,grado
    Where alumno.id_alumno= grado.id_alumno'
;

            
$consulta mysql_query($instruccion,$conexion)
                or die (
'Fallo en la consulta');
        
$nf mysql_num_rows($consulta);
        if (
$nf 0)
        {
        
// cerramos PHP y cambiamos a HTML
        
?>
           <TABLE align='center' border ='2'>
           <CAPTION><h2>LISTADO GENERAL DE ALUMNOS EN BASE DE DATOS</h2></CAPTION>
           <TR>
            <TH>Nombre del Alumno</TH>
            
           </TR>
           <?PHP
           
// volvemos a php
            
for ($x=0;$x<$nf;$x++){
                
$fila mysql_fetch_row($consulta);
                
// etc
                
?>
               <TR>
                <TD><?echo $fila['nombre']; ?></TD>
                
                </TR>

           <?PHP
             
}
            
?>
           </TABLE>
           <?PHP
           
} else {
            
        echo 
'No hay Alumnos almacenados en Base de Datos';
            
        }
?>

tengo estas tres tablas relacionadas

Código:
1.alumno                               grado                           seccion_grado
2.id_alumno (UNIQUE)             id_ano  (PK)                     id_seccion_grado
3.nombre                             id_alumno (FK) "Alumno"      id_ano (FK) "grado"
4.sexo                                  ano                                cedula (FK) "alumno"
5.direccion                           seccion
6.cedula (PK)
7.telefono
8.nomrep
9.numrep
los datos que tengo son estos

tabla alumno

Código:
1	carlos	Masculino	los cocos	14141414	02763522222	jacinta		04125209822
2       jender	Masculino	kaka		15151515	04156356565	Carmen Osorio	04161796414
3	dina	femenino	pupi		16161616	04151231231	azul		1111111
4	chela	femenino	kiki		17171717	0123456		papa
Código:
1	1	2	a
2	2	2	b
3	3	3	c
4	4	2	a
Código:
1	1	14141414
2	2	15151515
3	3	16161616
4	4	17171717
Solo pongo a imprimir el nombre para ver si me imprime pero nada, agarra los 4 campos que tengo en bd pero no muestra el nombre.

esto me esta volviendo loco de verdad semanas de programacion y trasnocho y esto es lo que me tiene parado! necesito mostrar eso! mostrar todos los alumnos
  #2 (permalink)  
Antiguo 18/06/2012, 00:38
Avatar de Rodrhigo  
Fecha de Ingreso: septiembre-2011
Ubicación: Temuco-Valdivia-Osorno
Mensajes: 254
Antigüedad: 12 años, 7 meses
Puntos: 48
Respuesta: imprimir consulta multiple

Probaste haciendo SOLO un "SELECT alumno.nombre FROM alumno" para ver si te imprime algo???..... porque tu codigo parece bien....

Ademas prueba reemplazar esto:
<?echo $fila['nombre']; ?>
por esto:
<?echo $fila[0]; ?>

Y lo siguiente podrias reemplazarlo:
for ($x=0;$x<$nf;$x++){
$fila = mysql_fetch_row($consulta);

Por:
while($fila = mysql_fetch_row($consulta))


---------------------
y otra cosa si haces un echo mysql_num_rows($consulta); cuanto arroja??? cero???
  #3 (permalink)  
Antiguo 18/06/2012, 05:49
 
Fecha de Ingreso: abril-2011
Mensajes: 52
Antigüedad: 13 años
Puntos: 0
Respuesta: imprimir consulta multiple

probe todo pero no! probe solo con el nombre y sale igual

y al momento de hacerle el

echo mysql_num_rows($consulta);

no me arroja nada queda igual! mmmm! sera por las relaciones de las tablas??? te muestro haber si tiene algun error.!


tabla grado
Código:
Relaciones
Columna	Restricción de clave foránea (INNODB)
id_ano	
id_alumno "sistema"."alumno"."id_alumno"	ON DELETE  ON UPDATE  
ano	¡No se ha definido ningún índice!
seccion	¡No se ha definido ningún índice!
tabla seccion_grado

Código:
Columna	Restricción de clave foránea (INNODB)
id_seccion_grado	
id_ano	"sistema"."grado"."id_ano" ON DELETE  ON UPDATE  
cedula	"sistema"."alumno"."cedula" ON DELETE  ON UPDATE
Tabla alumno clave primaria y unique

Código:
Acción	    			Nombre de la clave	Tipo	Único	Empaquetado	Columna	Cardinalidad	Cotejamiento	Nulo	Comentario
PRIMARY	BTREE	Sí	No	cedula			4	A		
id_alumnoBTREE	Sí	No	id_alumno		4	A
Esto de relacion no lo entiendo muy bien!!! esto lo seleccione desde vista de relacion!
  #4 (permalink)  
Antiguo 18/06/2012, 06:03
Avatar de jpint  
Fecha de Ingreso: junio-2012
Ubicación: Ciudad Real - España
Mensajes: 97
Antigüedad: 11 años, 10 meses
Puntos: 12
Respuesta: imprimir consulta multiple

prueba a ver si esa select devuelve algun valor en la base de datos, el workbench si es mysql por ejemplo, asi sabras si tiene algo que ver con las relaciones
  #5 (permalink)  
Antiguo 18/06/2012, 22:07
 
Fecha de Ingreso: abril-2011
Mensajes: 52
Antigüedad: 13 años
Puntos: 0
Respuesta: imprimir consulta multiple

puedes explicarme mejor amigo!
  #6 (permalink)  
Antiguo 19/06/2012, 00:16
Avatar de Rodrhigo  
Fecha de Ingreso: septiembre-2011
Ubicación: Temuco-Valdivia-Osorno
Mensajes: 254
Antigüedad: 12 años, 7 meses
Puntos: 48
Respuesta: imprimir consulta multiple

Lo que decia jprint es que ejecutes tu consulta en workbench(un administrador de bases de datos....y puedes hacer consultas) para ver si la consulta que envias esta bien(lo puedes hacer tambien desde phpmyadmin).

Yo te recomiendo activar el registro de consultas(Log) en la carpeta de mysql existe una carpeta que se llama Bin (ejemplo: C:\xampp\mysql\bin) y en esa existe un archivo que se llama my.ini ahy debes agregar esto:
log=consultas.sql en la parte de [mysqld]

ejemplo:
[mysqld]
port= 3306
socket= "C:/xampp/mysql/mysql.sock"
basedir="C:/xampp/mysql"
tmpdir="C:/xampp/tmp"

....bla bla bla
...
..
log='consultas.sql'
[mysqldump]
---------

ya despues reinicias mysql..... Con eso haces que todas las consultas que se realicen queden guardadas....

ahora ejecutas tu pagina y luego vas a ver el archivo consulta.sql que se encuentra en la carpeta data de mysql..... si aparece tu consulta y no te arrojo ningun resultado es porque esta mal tu consulta y entonces tendras que copiar y pegar esa consulta en phpmyadmin (por dar un ejemplo) y ver donde esta tu error. :P

Etiquetas: html, mysql, tabla
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 04:45.