Foros del Web » Programando para Internet » PHP »

Agrupar columnas de tabla

Estas en el tema de Agrupar columnas de tabla en el foro de PHP en Foros del Web. Hola a todos estoy haciendo una tabla para mostrar las asignaturas dadas en cada semestre Código PHP: <table border="0" class="normal">   <thead>     <tr>              <td>Clave</td>        <td>Nombre</td>       <td>Semestre</td>        ...
  #1 (permalink)  
Antiguo 06/02/2013, 18:53
Avatar de Briss  
Fecha de Ingreso: junio-2011
Mensajes: 1.293
Antigüedad: 12 años, 9 meses
Puntos: 12
Agrupar columnas de tabla

Hola a todos estoy haciendo una tabla para mostrar las asignaturas dadas en cada semestre

Código PHP:
<table border="0" class="normal">
  <thead>
    <tr>
      
      <td>Clave</td>
       <td>Nombre</td>
      <td>Semestre</td>
      
    </tr></thead>
  <?php do { ?>
    <tbody>
      <tr>
     
     <td  ><?php echo $row ['claveasignatura']; ?></div></td>
     <td ><?php echo $row ['nombre']; ?></div></td>
        <td ><?php echo $row ['semestre']; ?></div></td>

      </tr></tbody>
    <?php } while ($rowmysql_fetch_assoc($row)); ?>
</table>
Pero es muy repetitivo me gustaria agruparlas por semestre algo asi
http://imagenes.terra-gaming.com/vis...2083868884.png

Gracias
  #2 (permalink)  
Antiguo 06/02/2013, 19:14
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: Agrupar columnas de tabla

pues en mysql existe el group by, no se si te sirva, siempre es mejor optimizar las consultas por sql que agrupar en php. De otra forma, tendrías que leer los datos y agrupar en una matriz para luego mostrar el contenido.
  #3 (permalink)  
Antiguo 07/02/2013, 10:39
Avatar de Briss  
Fecha de Ingreso: junio-2011
Mensajes: 1.293
Antigüedad: 12 años, 9 meses
Puntos: 12
Respuesta: Agrupar columnas de tabla

no el problema no es el group by bueno = y si... porque si lo use aunque halla 3 materias de primero muestra solo una... lo que trato de hacer es ordenar mi tabla como la imagen pero no logro hacerlo... ya que asi como la tengo solo muestra asi los resultados

clave nombre grado...
1 matematicas 1
2 biologia 1
3 español 2
  #4 (permalink)  
Antiguo 07/02/2013, 11:05
Avatar de PIRRUMAN  
Fecha de Ingreso: febrero-2006
Ubicación: Monterrey, Nuevo León
Mensajes: 633
Antigüedad: 18 años, 2 meses
Puntos: 53
Respuesta: Agrupar columnas de tabla

cuales son las tablas involucradas? que consulta es la que realizas?
__________________
“Prefiero ser un tonto momentaneo que un eterno ignorante”
“¡El éxito es resultado de los aciertos,los aciertos resultado de la experiencia y la experiencia resultado de los errores!”
  #5 (permalink)  
Antiguo 07/02/2013, 11:08
Avatar de Briss  
Fecha de Ingreso: junio-2011
Mensajes: 1.293
Antigüedad: 12 años, 9 meses
Puntos: 12
Respuesta: Agrupar columnas de tabla

Cita:
Iniciado por PIRRUMAN Ver Mensaje
cuales son las tablas involucradas? que consulta es la que realizas?
Código PHP:
<table border="0" class="normal"> 
  <thead> 
    <tr> 
       
      <td>Clave</td> 
       <td>Nombre</td> 
      <td>Semestre</td> 
       
    </tr></thead> 
  <?php do { ?> 
    <tbody> 
      <tr> 
      
     <td  ><?php echo $row ['claveasignatura']; ?></div></td> 
     <td ><?php echo $row ['nombre']; ?></div></td> 

        <td ><?php echo $row ['semestre']; ?></div></td> 

      </tr></tbody> 
    <?php } while ($rowmysql_fetch_assoc($row)); ?> 
</table>
Mi consulta es simple un select a mi tabla asignaturas
  #6 (permalink)  
Antiguo 07/02/2013, 11:26
Avatar de PIRRUMAN  
Fecha de Ingreso: febrero-2006
Ubicación: Monterrey, Nuevo León
Mensajes: 633
Antigüedad: 18 años, 2 meses
Puntos: 53
Respuesta: Agrupar columnas de tabla

Bueno , suponiendo que tu tabla asignatura tiene :

Id_Asig,Nombre_Asig,Horas_asig,Grado_Asig

y lo que deseas es mostrar las asignaturas relacionadas a la anterior.

Una idea sería...
en primera instancia deberias agregar una columna mas para hacer dicha relacion:

Proviene_Asig

donde colocaras el id de la asignatura donde se relaciona

despues podrias hacer una consulta inicial de todas las materias de primer grado

Select * from asignatura where Grado_Asig =1

ejemplo con dos registros

Id_Asig,Nombre_Asig,Horas_asig,Grado_Asig,Proviene _Asig
1,matematicas uno,5,1,0
2,matematicas dos,4,2,1

recorriendolo
do{
<tr>
<td ><?php echo $row ['claveasignatura']; ?></td>
<td ><?php echo $row ['nombre']; ?></td>
///aqui buscamos la siguiente materia del segundo semestre
$sql=select * from asignatura where Proviene_Asig=1
$ressql=...etc
$datossql=mysql_fetcharray($ressql)
<td ><?php echo $datossql['claveasignatura']; ?></td>
<td ><?php echo $datossql ['nombre']; ?></td>
</tr>
}while($row= mysql_fetch_array($row))
__________________
“Prefiero ser un tonto momentaneo que un eterno ignorante”
“¡El éxito es resultado de los aciertos,los aciertos resultado de la experiencia y la experiencia resultado de los errores!”
  #7 (permalink)  
Antiguo 07/02/2013, 11:27
 
Fecha de Ingreso: agosto-2011
Ubicación: Santo Domingo
Mensajes: 487
Antigüedad: 12 años, 8 meses
Puntos: 31
Respuesta: Agrupar columnas de tabla

pon tu codigo en la consulta y explica mas detalladamente tu problema
__________________
El talento se educa en la KARMA y el carácter en la tempestad.
Gabriel De Los Santos

Etiquetas: agrupar, columnas, 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 00:54.