Foros del Web » Programando para Internet » PHP »

Crear una tabla a partir de datos mysql

Estas en el tema de Crear una tabla a partir de datos mysql en el foro de PHP en Foros del Web. Buenas!, estoy intentado crear un sistema pero tras probar y probar y no salirme he decidido pedir ayuda. Mi intención es obtener de mysql 2 ...
  #1 (permalink)  
Antiguo 12/03/2011, 09:10
 
Fecha de Ingreso: diciembre-2010
Ubicación: Gavà
Mensajes: 74
Antigüedad: 13 años, 4 meses
Puntos: 3
Pregunta Crear una tabla a partir de datos mysql

Buenas!, estoy intentado crear un sistema pero tras probar y probar y no salirme he decidido pedir ayuda.

Mi intención es obtener de mysql 2 datos, uno que me diga el número de filas y otro el número de columnas y entonces con esto generar una tabla (o sea, una tabla en el .php)
Lo único que se me había ocurrido era llena todos de "if" (o sea, if $file = 4.....) pero entonces el código sería muy feo a la vez que impráctico.

Alguna idea de como hacerlo?
  #2 (permalink)  
Antiguo 12/03/2011, 09:15
 
Fecha de Ingreso: noviembre-2009
Mensajes: 535
Antigüedad: 14 años, 5 meses
Puntos: 25
Respuesta: Crear una tabla a partir de datos mysql

se quieres solo una consulta esta te puede servir
si tienes una tabla de esta forma
id int(11)
nombre_1 varcher(20)
nombre_2 varcher(20)
nombre_3 varcher(20)
nombre_4 varcher(20)
$query = mysql_query("SHOW COLUMNS FROM tabla WHERE FIELDS LIKE '%nombre_%');

el resultado seria nombre_1
nombre_2 ...
__________________
cada vez que aprendes algo te crees que no sabes nada
  #3 (permalink)  
Antiguo 12/03/2011, 09:19
Avatar de JoseTejada  
Fecha de Ingreso: diciembre-2007
Ubicación: Peru.Lima.Cercado.MDuarez.Granaderos172
Mensajes: 218
Antigüedad: 16 años, 4 meses
Puntos: 11
Respuesta: Crear una tabla a partir de datos mysql

Hola, mira el mysql_num_rows() (si usas mysql, claro) te muestra el número de filas y mysql_num_fields() la cantidad de columnas... algo así:

Código PHP:
$result mysql_query("SELECT * FROM tabla") or die("mal query : ".  mysql_error());
$filas mysql_num_rows($result);
$col mysql_num_fields($result);
echo 
"Numero de filas : $filas<br />";
echo 
"Numero de columnas : $col<br />"
__________________
Un poco de Karmita no te va a hacer a ti pobre ni a mi rico... colabórame px ;)... Twitter: @josetejadauch
  #4 (permalink)  
Antiguo 12/03/2011, 09:25
 
Fecha de Ingreso: diciembre-2010
Ubicación: Gavà
Mensajes: 74
Antigüedad: 13 años, 4 meses
Puntos: 3
Respuesta: Crear una tabla a partir de datos mysql

Me he explicado mal creo, tengo una tabla mysql de donde obtengo en número de filas y el número de columnas, entonces lo que quiero es crear ese número de filas y de columnas, o sea
echo "<td>";...
  #5 (permalink)  
Antiguo 12/03/2011, 09:28
 
Fecha de Ingreso: noviembre-2009
Mensajes: 535
Antigüedad: 14 años, 5 meses
Puntos: 25
Respuesta: Crear una tabla a partir de datos mysql

pues para filas es como hadicho nuestro compañero JoseTejada y columnas como te he dicho yo ariba son dos consultas diferentes y para sacar el numero tienes que utelizar el mysql_num_rows(consulta columna)
mysql_num_rows(consulta fila)
__________________
cada vez que aprendes algo te crees que no sabes nada
  #6 (permalink)  
Antiguo 12/03/2011, 09:29
Avatar de JoseTejada  
Fecha de Ingreso: diciembre-2007
Ubicación: Peru.Lima.Cercado.MDuarez.Granaderos172
Mensajes: 218
Antigüedad: 16 años, 4 meses
Puntos: 11
Respuesta: Crear una tabla a partir de datos mysql

LOL... a ver... algo así:
Código PHP:
$result mysql_query("SELECT * FROM tabla") or die("mal query : ".  mysql_error());
$col mysql_num_fields($result);
echo 
"<table>";
while(
$fila mysql_fetch_array($result)){
    echo 
"<tr>";
    for(
$i=0;$i<$col;$i++){
        echo 
"<td>$fila[$i]</td>";
    }
    echo 
"</tr>";
}
echo 
"</table>"
__________________
Un poco de Karmita no te va a hacer a ti pobre ni a mi rico... colabórame px ;)... Twitter: @josetejadauch
  #7 (permalink)  
Antiguo 12/03/2011, 09:32
 
Fecha de Ingreso: diciembre-2010
Ubicación: Gavà
Mensajes: 74
Antigüedad: 13 años, 4 meses
Puntos: 3
Respuesta: Crear una tabla a partir de datos mysql

Bueno, defino todo mejor. Estoy creando un sistema para que los profesores lleven las notas, entonces estoy ya en el último tramo que es crear este sistema xD.

El resultado final quiero que sea algo así:
http://s3.subirimagenes.com:81/otros/previo/thump_6098829sin-ttulo.jpg
  #8 (permalink)  
Antiguo 12/03/2011, 09:34
 
Fecha de Ingreso: diciembre-2010
Ubicación: Gavà
Mensajes: 74
Antigüedad: 13 años, 4 meses
Puntos: 3
Respuesta: Crear una tabla a partir de datos mysql

JoseTejada, eso era lo que buscaba, gracias!
  #9 (permalink)  
Antiguo 12/03/2011, 09:36
Avatar de JoseTejada  
Fecha de Ingreso: diciembre-2007
Ubicación: Peru.Lima.Cercado.MDuarez.Granaderos172
Mensajes: 218
Antigüedad: 16 años, 4 meses
Puntos: 11
Respuesta: Crear una tabla a partir de datos mysql

Chevere... no t olvides del karmita ps :P
__________________
Un poco de Karmita no te va a hacer a ti pobre ni a mi rico... colabórame px ;)... Twitter: @josetejadauch
  #10 (permalink)  
Antiguo 12/03/2011, 09:45
 
Fecha de Ingreso: diciembre-2010
Ubicación: Gavà
Mensajes: 74
Antigüedad: 13 años, 4 meses
Puntos: 3
Respuesta: Crear una tabla a partir de datos mysql

He dejado el código así:
Código PHP:
Ver original
  1. <?php
  2. $consultanumero_alumnos = mysql_query("SELECT numero_alumnos FROM tablasprofes WHERE idt='$tabla'");
  3.     echo "<table>";
  4.     while($resultado5 = mysql_fetch_array($consultanumero_alumnos)){
  5.         $numero_alumnos = $resultado5['numero_alumnos'];
  6.         echo "<tr>";
  7.     for($i=0;$i<$col;$i++){
  8.         echo "<td>$numero_alumnos[$i]</td>";
  9.     }
  10.     echo "</tr>";
  11. }
  12. echo "</table>";
  13. ?>

Pero tan solo me aparece <table><tr></tr></table> y ya está.
  #11 (permalink)  
Antiguo 12/03/2011, 09:48
Avatar de JoseTejada  
Fecha de Ingreso: diciembre-2007
Ubicación: Peru.Lima.Cercado.MDuarez.Granaderos172
Mensajes: 218
Antigüedad: 16 años, 4 meses
Puntos: 11
Respuesta: Crear una tabla a partir de datos mysql

Encima de donde dice:
Código PHP:
echo "<table>"
Pon para que te muestre la cantidad de filas que trae... a lo mejor no está trayendo nada... algo así:
Código PHP:
echo "Num filas : ".mysql_num_rows($resultado5)."<br />";
echo 
"<table>"
__________________
Un poco de Karmita no te va a hacer a ti pobre ni a mi rico... colabórame px ;)... Twitter: @josetejadauch
  #12 (permalink)  
Antiguo 12/03/2011, 09:52
Avatar de JoseTejada  
Fecha de Ingreso: diciembre-2007
Ubicación: Peru.Lima.Cercado.MDuarez.Granaderos172
Mensajes: 218
Antigüedad: 16 años, 4 meses
Puntos: 11
Respuesta: Crear una tabla a partir de datos mysql

Ojo no t olvides de poner el mysql_error()... para que veas si bota error...
Código PHP:
$resultado5 mysql_query("SELECT numero_alumnos FROM tablasprofes WHERE idt='$tabla'") or die("mal query : ".  mysql_error()); 
__________________
Un poco de Karmita no te va a hacer a ti pobre ni a mi rico... colabórame px ;)... Twitter: @josetejadauch
  #13 (permalink)  
Antiguo 12/03/2011, 09:53
 
Fecha de Ingreso: diciembre-2010
Ubicación: Gavà
Mensajes: 74
Antigüedad: 13 años, 4 meses
Puntos: 3
Respuesta: Crear una tabla a partir de datos mysql

Cita:
Iniciado por JoseTejada Ver Mensaje
Encima de donde dice:
Código PHP:
echo "<table>"
Pon para que te muestre la cantidad de filas que trae... a lo mejor no está trayendo nada... algo así:
Código PHP:
echo "Num filas : ".mysql_num_rows($resultado5)."<br />";
echo 
"<table>"
Era un error tonto, he dejado el código así:
Código PHP:
<?php
$consultanumero_alumnos 
mysql_query("SELECT numero_alumnos FROM tablasprofes WHERE idt='$tabla'");
        while(
$resultado5 mysql_fetch_array($consultanumero_alumnos)){
        
$numero_alumnos $resultado5['numero_alumnos'];
        echo 
"<table>";
        echo 
"<tr>";
    for(
$i=0;$i<[B]$numero_alumnos[/B];$i++){
        echo 
"<td>$numero_alumnos[$i]</td>";
    }
    echo 
"</tr>";
}
echo 
"</table>";
?>
Lo que ahora me crea es un <table><tr><td>el número de la variable</td></tr></table>
y no el número de variables de filas
  #14 (permalink)  
Antiguo 12/03/2011, 09:57
Avatar de JoseTejada  
Fecha de Ingreso: diciembre-2007
Ubicación: Peru.Lima.Cercado.MDuarez.Granaderos172
Mensajes: 218
Antigüedad: 16 años, 4 meses
Puntos: 11
Respuesta: Crear una tabla a partir de datos mysql

Me parece que tu código debe quedar así:

Código PHP:
      <?php
      $consultanumero_alumnos 
mysql_query("SELECT numero_alumnos FROM tablasprofes WHERE idt='$tabla'");
          echo 
"<table>";
          while(
$resultado5 mysql_fetch_array($consultanumero_alumnos)){
              echo 
"<tr>";
          for(
$i=0;$i<$col;$i++){
              echo 
"<td>$resultado5[numero_alumnos]</td>";
          }
          echo 
"</tr>";
      }
      echo 
"</table>";
      
?>
__________________
Un poco de Karmita no te va a hacer a ti pobre ni a mi rico... colabórame px ;)... Twitter: @josetejadauch
  #15 (permalink)  
Antiguo 12/03/2011, 10:01
Avatar de JoseTejada  
Fecha de Ingreso: diciembre-2007
Ubicación: Peru.Lima.Cercado.MDuarez.Granaderos172
Mensajes: 218
Antigüedad: 16 años, 4 meses
Puntos: 11
Respuesta: Crear una tabla a partir de datos mysql

Por cierto... la variable a $col no le das valor... ese tiene ke ser así:
Código PHP:
$col mysql_num_fields($consultanumero_alumnos); 
__________________
Un poco de Karmita no te va a hacer a ti pobre ni a mi rico... colabórame px ;)... Twitter: @josetejadauch
  #16 (permalink)  
Antiguo 12/03/2011, 10:02
 
Fecha de Ingreso: diciembre-2010
Ubicación: Gavà
Mensajes: 74
Antigüedad: 13 años, 4 meses
Puntos: 3
Respuesta: Crear una tabla a partir de datos mysql

Ahora sí! gracias!!!
  #17 (permalink)  
Antiguo 12/03/2011, 10:09
Avatar de JoseTejada  
Fecha de Ingreso: diciembre-2007
Ubicación: Peru.Lima.Cercado.MDuarez.Granaderos172
Mensajes: 218
Antigüedad: 16 años, 4 meses
Puntos: 11
Respuesta: Crear una tabla a partir de datos mysql

Chevere... :D
__________________
Un poco de Karmita no te va a hacer a ti pobre ni a mi rico... colabórame px ;)... Twitter: @josetejadauch

Etiquetas: html, mysql, plasmar, tablas
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 21:39.