Foros del Web » Programando para Internet » PHP »

Tabla horizotal php

Estas en el tema de Tabla horizotal php en el foro de PHP en Foros del Web. hola amigos miren en esta ocacion tengo una consulta que via mysql no pude resolver vere si por php lo puedo hacer, tengo una tabla ...
  #1 (permalink)  
Antiguo 07/03/2012, 13:25
 
Fecha de Ingreso: diciembre-2008
Mensajes: 88
Antigüedad: 15 años, 4 meses
Puntos: 0
Pregunta Tabla horizotal php

hola amigos miren en esta ocacion tengo una consulta que via mysql no pude resolver vere si por php lo puedo hacer, tengo una tabla que almacena el nombre del alumno el ciclo en el cual fue evaluado(ciclo 1, ciclo 2, ciclo 3, ciclo 4), y no puedo hacer que me mueste los resultados de manera horizontal:

mi codigo me muestra esto:

Nombre Alumno. Ciclo 1 Ciclo 2 Ciclo 3 Ciclo 4
Nombre alumno1 44
59
Nombre alumno2 58
70
Nombre alumno3 70
70
Nombre alumno4 10
53
Nombre alumno5 66
64

y necesito que lo muestre asi

Nombre Alumno. Ciclo 1 Ciclo 2 Ciclo 3 Ciclo 4
Nombre alumno1 44 59
Nombre alumno2 58 70
Nombre alumno3 70 70
Nombre alumno4 10 53
Nombre alumno5 66 64

mi codigo es el siguiente:

Código PHP:
<?php
    mysqli_free_result
(); 
    
$Connection mysqli_connect("xxx.xx.xx.xxx","xxx","xxxxx");
    
mysqli_select_db($Connection,'ces_calidad') or die("Could not connect to database");
    
$sql2="call notas_ciclo_asesores('J. Santander');";
    
$result2 mysqli_query($Connection,$sql2);
    
$tabla_apelacio=' <table cellpadding="0" cellspacing="0" width="550" style="font-size:11px;">';
    
$tabla_apelacio.='<thead style="font-weight:bold;">
                            <tr>
                                <td align="left" >Nombre Asesor.</td><td>Ciclo 1</td><td >Ciclo 2</td><td >Ciclo 3</td><td>Ciclo 4</td>
                            </tr>
                        </thead><tbody>'
;
    while(
$row2 mysqli_fetch_array($result2)){
        
$tabla_apelacio.='<tr>';
        
        if(
$row2[5]==1)
        {
            
$tabla_apelacio.='<td align="left" >'.$row2[1].'</td>';
            
$tabla_apelacio.='<td >'.$row2[4].'</td>';
            
        }
        if(
$row2[5]==2)
        {
            
$tabla_apelacio.='<td >'.$row2[4].'</td>';
            
        }            
        
    }
    
$tabla_apelacio.='</tr>';
    
$tabla_apelacio.='</tbody></table>';
    echo 
$tabla_apelacio;
?>
y porsiacaso dejo como me trae los datos la consulta:
NOMBRE nota Ciclo
MELLA ALBERTO 70 1
GARCIA ALICIA 44 1
GARCIA ALICIA 59 2
CEPEDA ANDREA 58 1
CEPEDA ANDREA 70 2
SAEZ IGNACIO 55 1
HURTADO SEBASTIAN 70 1
HURTADO SEBASTIAN 70 2
MUÑOZ ALEJANDRO 10 1
MUÑOZ ALEJANDRO 53 2
  #2 (permalink)  
Antiguo 07/03/2012, 13:43
Usuario no validado
 
Fecha de Ingreso: enero-2010
Ubicación: Maturín, Monagas
Mensajes: 190
Antigüedad: 14 años, 3 meses
Puntos: 24
Respuesta: Tabla horizotal php

veo que aqui:

Código PHP:
Ver original
  1. <td align="left" >Nombre Asesor.</td><td>Ciclo 1</td><td >Ciclo 2</td><td >Ciclo 3</td><td>Ciclo 4</td>
muestras 5 celdas y en el while muestras solo 3 creo por eso te las mestras asi si muestras mas datos en las celdas restantes o algo creo te saldra ordenado..
  #3 (permalink)  
Antiguo 07/03/2012, 13:59
 
Fecha de Ingreso: diciembre-2008
Mensajes: 88
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Tabla horizotal php

Cita:
Iniciado por leonagelic Ver Mensaje
veo que aqui:

Código PHP:
Ver original
  1. <td align="left" >Nombre Asesor.</td><td>Ciclo 1</td><td >Ciclo 2</td><td >Ciclo 3</td><td>Ciclo 4</td>
muestras 5 celdas y en el while muestras solo 3 creo por eso te las mestras asi si muestras mas datos en las celdas restantes o algo creo te saldra ordenado..
mira probe como lo dices deje solo

<td align="left" >Nombre Asesor.</td><td>Ciclo 1</td><td >Ciclo 2</td>

pero sigue igual dejando la segunda nota debajo del nombre y segun mi logica la manera en la cual estoy concatenando la tabla estaria bien no se que mas puede ser
  #4 (permalink)  
Antiguo 07/03/2012, 14:01
Usuario no validado
 
Fecha de Ingreso: enero-2010
Ubicación: Maturín, Monagas
Mensajes: 190
Antigüedad: 14 años, 3 meses
Puntos: 24
Respuesta: Tabla horizotal php

porque no lo haces normal no concatenes para ver que hace...
  #5 (permalink)  
Antiguo 07/03/2012, 14:06
 
Fecha de Ingreso: diciembre-2008
Mensajes: 88
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Tabla horizotal php

Cita:
Iniciado por leonagelic Ver Mensaje
porque no lo haces normal no concatenes para ver que hace...
ya lo habia hecho antes pero nada sigue mostrando igual
  #6 (permalink)  
Antiguo 07/03/2012, 14:11
Usuario no validado
 
Fecha de Ingreso: enero-2010
Ubicación: Maturín, Monagas
Mensajes: 190
Antigüedad: 14 años, 3 meses
Puntos: 24
Respuesta: Tabla horizotal php

modifique tu codigo asi y ya me lo muestra como deseas....

Código PHP:
Ver original
  1. <?php
  2. $host = "localhost"; //database location
  3. $user = "root"; //database username
  4. $pass = "6421285"; //database password
  5. $db_name = "ferreteria"; //database name
  6.  
  7. $link = mysql_connect($host, $user, $pass) or
  8.     die("No ha sido posible conectarse: " . mysql_error());;
  9. mysql_select_db($db_name);
  10. //sets encoding to utf8
  11. //mysql_query("SET NAMES utf8");
  12.     $sql2="SELECT * FROM producto ORDER BY codigo asc";
  13.     $result2 = mysql_query($sql2,$link);
  14.     $tabla_apelacio=' <table cellpadding="0" cellspacing="0" width="550" style="font-size:11px;">';
  15.     $tabla_apelacio.='<thead style="font-weight:bold;">
  16.                            <tr>
  17.                                <td align="left" >Nombre Asesor.</td><td>Ciclo 1</td><td >Ciclo 2</td><td >Ciclo 3</td><td>Ciclo 4</td>
  18.                            </tr>
  19.                        </thead><tbody>';
  20.     while($row2 = mysql_fetch_array($result2)){
  21.         $tabla_apelacio.='<tr>';
  22.          
  23.         if($row2[2]==3)
  24.         {
  25.             $tabla_apelacio.='<td align="left" >'.$row2[0].'</td>';
  26.             $tabla_apelacio.='<td >'.$row2[1].'</td>';
  27.              
  28.         }
  29.         if($row2[2]==3)
  30.         {
  31.             $tabla_apelacio.='<td >'.$row2[2].'</td>';
  32.              
  33.         }              
  34.     }
  35.     $tabla_apelacio.='</tr>';
  36.     $tabla_apelacio.='</tbody></table>';
  37.     echo $tabla_apelacio;
  38. ?>

adaptalo a tu BD y eso... saludos espero te sirva

Última edición por leonagelic; 07/03/2012 a las 14:12 Razón: correccion
  #7 (permalink)  
Antiguo 07/03/2012, 15:05
 
Fecha de Ingreso: diciembre-2008
Mensajes: 88
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Tabla horizotal php

Cita:
Iniciado por leonagelic Ver Mensaje
modifique tu codigo asi y ya me lo muestra como deseas....

Código PHP:
Ver original
  1. <?php
  2. $host = "localhost"; //database location
  3. $user = "root"; //database username
  4. $pass = "6421285"; //database password
  5. $db_name = "ferreteria"; //database name
  6.  
  7. $link = mysql_connect($host, $user, $pass) or
  8.     die("No ha sido posible conectarse: " . mysql_error());;
  9. mysql_select_db($db_name);
  10. //sets encoding to utf8
  11. //mysql_query("SET NAMES utf8");
  12.     $sql2="SELECT * FROM producto ORDER BY codigo asc";
  13.     $result2 = mysql_query($sql2,$link);
  14.     $tabla_apelacio=' <table cellpadding="0" cellspacing="0" width="550" style="font-size:11px;">';
  15.     $tabla_apelacio.='<thead style="font-weight:bold;">
  16.                            <tr>
  17.                                <td align="left" >Nombre Asesor.</td><td>Ciclo 1</td><td >Ciclo 2</td><td >Ciclo 3</td><td>Ciclo 4</td>
  18.                            </tr>
  19.                        </thead><tbody>';
  20.     while($row2 = mysql_fetch_array($result2)){
  21.         $tabla_apelacio.='<tr>';
  22.          
  23.         if($row2[2]==3)
  24.         {
  25.             $tabla_apelacio.='<td align="left" >'.$row2[0].'</td>';
  26.             $tabla_apelacio.='<td >'.$row2[1].'</td>';
  27.              
  28.         }
  29.         if($row2[2]==3)
  30.         {
  31.             $tabla_apelacio.='<td >'.$row2[2].'</td>';
  32.              
  33.         }              
  34.     }
  35.     $tabla_apelacio.='</tr>';
  36.     $tabla_apelacio.='</tbody></table>';
  37.     echo $tabla_apelacio;
  38. ?>

adaptalo a tu BD y eso... saludos espero te sirva
muchisimas gracias por la ayuda pero sigo en lo mismo, ya me va a explotar la cabeza ajajaja mira dejo una imagen para graficar mejor el problema

  #8 (permalink)  
Antiguo 07/03/2012, 15:27
 
Fecha de Ingreso: diciembre-2008
Mensajes: 88
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Tabla horizotal php

Gracias a todos por su ayuda alfinal logre solucionarlo era algo basico abrir el tr en el primer if y cerrarlo en el ultimo dejo el codigo por si a alguien le sirve

Código PHP:
mysqli_free_result(); 
    
$Connection mysqli_connect("172.17.97.118","root","Passw0rd");
    
mysqli_select_db($Connection,'ces_calidad') or die("Could not connect to database");
    
$sql2="call notas_ciclo_asesores('J. Santander');";
    
$result2 mysqli_query($Connection,$sql2);
    
$tbl_notas ' <table cellpadding="0" cellspacing="0" width="550" style="font-size:11px;">';
    
$tbl_notas .= '<thead style="font-weight:bold;">
                            <tr>
                                <td align="left" >Nombre Asesor.</td><td>Ciclo 1</td><td >Ciclo 2</td><td>Ciclo 3</td><td >Ciclo 4</td>
                            </tr>
                        </thead><tbody>'
;
    
    while(
$row2 mysqli_fetch_array($result2)){
        
        
        if(
$row2[5]==1)
        {
            
$tbl_notas .= '<tr>';
            
$tbl_notas .= '<td align="left" >'.$row2[1].'</td>';
            
$tbl_notas .=  '<td >'.$row2[4].'</td>';
            
//echo $row2[5];
        
}
        if(
$row2[5]==2)
        {
            
$tbl_notas .=  '<td >'.$row2[4].'</td>';
            
//echo $row2[5];
             
        
}
        if(
$row2[5]==3)
        {
            
$tbl_notas .=  '<td >'.$row2[4].'</td>';
            
//echo $row2[5];
             
        
}    
        if(
$row2[5]==4)
        {
            
$tbl_notas .=  '<td >'.$row2[4].'</td>';
            
//echo $row2[5];
             
$tbl_notas.='</tr>';
        }                
        
    }
    
    
$tbl_notas.='</tbody></table>'
    echo 
$tbl_notas
  #9 (permalink)  
Antiguo 07/03/2012, 15:31
Usuario no validado
 
Fecha de Ingreso: enero-2010
Ubicación: Maturín, Monagas
Mensajes: 190
Antigüedad: 14 años, 3 meses
Puntos: 24
Respuesta: Tabla horizotal php

jajajaja justo te escribia ya que revise que imprimia muchos tr y el primer if tenia un error saludos

Etiquetas: mysql, sql, 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 02:26.