Foros del Web » Programando para Internet » PHP »

Poblado de tabla

Estas en el tema de Poblado de tabla en el foro de PHP en Foros del Web. Hola colegas alguien puede ayudarme a solucionar este tema que me tiene un poco loco. Realizo una consulta a mi base de datos y obtengo ...
  #1 (permalink)  
Antiguo 28/04/2016, 11:48
 
Fecha de Ingreso: julio-2011
Mensajes: 88
Antigüedad: 12 años, 9 meses
Puntos: 2
Poblado de tabla

Hola colegas alguien puede ayudarme a solucionar este tema que me tiene un poco loco. Realizo una consulta a mi base de datos y obtengo lo siguiente.

Array
(
[0] => stdClass Object
(
[materia_id] => 6
[materia] => LAE I
[parcial] => 1
[totalparcial] => 50
)

[1] => stdClass Object
(
[materia_id] => 6
[materia] => LAE I
[parcial] => 2
[totalparcial] => 44
)

[2] => stdClass Object
(
[materia_id] => 6
[materia] => LAE I
[parcial] => 3
[totalparcial] => 38
)

[3] => stdClass Object
(
[materia_id] => 7
[materia] => INFORMATICA I
[parcial] => 1
[totalparcial] => 19
)

)

necesito poblar una tabla de calificaciones por materia con estos datos pero como hago para poner en la fila de la materia correspondiente el promedio del parcial correspondiente ejemplo:

Materia parcial 1 parcial 2 parcial 3
LAE1 50 44 38
INFO 19

Gracias de antemano. Saludos
  #2 (permalink)  
Antiguo 28/04/2016, 13:15
 
Fecha de Ingreso: octubre-2010
Ubicación: España
Mensajes: 1.007
Antigüedad: 13 años, 6 meses
Puntos: 123
Respuesta: Poblado de tabla

El problema cual es exactamente, como calcular el parcial?
__________________
Unset($vida['malRollo']);
  #3 (permalink)  
Antiguo 29/04/2016, 01:17
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años
Puntos: 326
Respuesta: Poblado de tabla

Tendrás que reordenar el array por materias...
__________________
>> Eleazan's Source
>> @Eleazan
  #4 (permalink)  
Antiguo 02/05/2016, 12:26
 
Fecha de Ingreso: julio-2011
Mensajes: 88
Antigüedad: 12 años, 9 meses
Puntos: 2
Respuesta: Poblado de tabla

Como hago esto podrias darme una pista.
  #5 (permalink)  
Antiguo 02/05/2016, 12:32
 
Fecha de Ingreso: julio-2011
Mensajes: 88
Antigüedad: 12 años, 9 meses
Puntos: 2
Respuesta: Poblado de tabla

Alguien sabe como puedo ordenar este array para que no se repitan las materias. Pero que pueda mostrar los datos de cada una de ellas.
  #6 (permalink)  
Antiguo 02/05/2016, 13:51
 
Fecha de Ingreso: septiembre-2015
Mensajes: 70
Antigüedad: 8 años, 6 meses
Puntos: 4
Respuesta: Poblado de tabla

el array lo puedes ordenar desde la consulta con un roder by en forma asc o desc ejemplo :

ascendente

Select * From [Tabla] ORDER BY [Campo_Tabla] ASC;

descendente

Select * From [Tabla] ORDER BY [Campo_Tabla] DESC;

Que en este caso el campo seria, el de los parciales.
  #7 (permalink)  
Antiguo 02/05/2016, 14:23
 
Fecha de Ingreso: julio-2011
Mensajes: 88
Antigüedad: 12 años, 9 meses
Puntos: 2
Mensaje Respuesta: Poblado de tabla

Entiendo perfectamente lo del orden. Pero lo que necesito es que los datos de cada materia el parcial y el totalparcial aparescan en una materia. Ej.

[0] LAE I
parcial 1
totalparcial 5

parcial 2
totalparcial 6

parcial 3
totalparcial 7

etc.
  #8 (permalink)  
Antiguo 03/05/2016, 05:15
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años
Puntos: 326
Respuesta: Poblado de tabla

Buenas,

Yo haria algo así
Código PHP:

$array_inicial
//Suponemos que este array es el que tienes tu!
$array_final = array();
foreach(
$array_inicial as $array_materia) {
    
$array_final[$array_materia['materia_id']] = array(
         
"nombre" => $array_materia['materia'],
         
"parcial".$array_materia['parcial'] => $totalparcial
    
);
}


echo 
'<pre>'.print_r($array_finaltrue).'</pre>'
Con eso, sabrias los parciales (parcial1, parcial2, parcial3), el nombre de la materia, y el ID
__________________
>> Eleazan's Source
>> @Eleazan

Etiquetas: 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 06:29.