Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Como exportar datos de una bd a excel en php

Estas en el tema de Como exportar datos de una bd a excel en php en el foro de PHP en Foros del Web. Buen dia: Queria aclarar una duda me dan una bd y los datos tengo que exportarlos a excel por medio de php un tuto o ...
  #1 (permalink)  
Antiguo 14/07/2014, 06:28
Avatar de jeisonr  
Fecha de Ingreso: julio-2014
Mensajes: 22
Antigüedad: 9 años, 9 meses
Puntos: 0
Como exportar datos de una bd a excel en php

Buen dia:

Queria aclarar una duda me dan una bd y los datos tengo que exportarlos a excel por medio de php un tuto o algo que me ayudo gracias

tengo este código que vi en Internet

Código PHP:
Ver original
  1. <?php  
  2. include('acceso_db.php');
  3.  
  4. #Sql, acá pone tu consulta a la tabla que necesites exportar filtrando los datos que creas necesarios.
  5. $sql = "SELECT * FROM reporte_tiempos ORDER BY proyecto DESC";
  6.  
  7. //$r = mysql_query( $sql ) or trigger_error( mysql_error($conn), E_USER_ERROR );
  8. $query="select * from reporte_tiempos order by proyecto ASC";
  9. $connection = conect();
  10. $r = mysql_query($query, $connection) or die(mysql_error());
  11.  
  12. $return = '';
  13. if( mysql_num_rows($r)>0){
  14.     $return .= '<table border=1>';
  15.     $cols = 0;
  16.     while($rs = mysql_fetch_row($r)){
  17.         $return .= '<tr>';
  18.         if($cols==0){
  19.             $cols = sizeof($rs);
  20.             $cols_names = array();
  21.             for($i=0; $i<$cols; $i++){
  22.                 $col_name = mysql_field_name($r,$i);
  23.                 $return .= '<th>'.htmlspecialchars($col_name).'</th>';
  24.                 $cols_names[$i] = $col_name;
  25.             }
  26.             $return .= '</tr><tr>';
  27.         }
  28.         for($i=0; $i<$cols; $i++){
  29.             #En esta iteración podes manejar de manera personalizada datos, por ejemplo:
  30.            if($cols_names[$i] == 'fechaAlta'){ #Fromateo el registro en formato Timestamp
  31.                $return .= '<td>'.htmlspecialchars(date('d/m/Y H:i:s',$rs[$i])).'</td>';
  32.             }else if($cols_names[$i] == 'activo'){ #Estado lógico del registro, en vez de 1 o 0 le muestro Si o No.
  33.                $return .= '<td>'.htmlspecialchars( $rs[$i]==1? 'SI':'NO' ).'</td>';
  34.             }else{
  35.                 $return .= '<td>'.htmlspecialchars($rs[$i]).'</td>';
  36.             }
  37.         }
  38.         $return .= '</tr>';
  39.     }
  40.     $return .= '</table>';
  41.     mysql_free_result($r);
  42. }
  43. #Cambiando el content-type más las <table> se pueden exportar formatos como csv
  44. header("Content-type: application/vnd-ms-excel; charset=iso-8859-1");
  45. header("Content-Disposition: attachment; filename=Registro_de_Usuarios_".date('d-m-Y').".xls");
  46. echo $return;  
  47.  
  48. ?>

Última edición por jeisonr; 14/07/2014 a las 07:25
  #2 (permalink)  
Antiguo 14/07/2014, 08:29
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 10 años, 9 meses
Puntos: 379
Respuesta: Como exportar datos de una bd a excel en php

Puedes usar headers: http://www.the-art-of-web.com/php/dataexport/
o usar algo como html2pdf: http://html2pdf.fr/es/default
PHPExcel: https://phpexcel.codeplex.com
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.

Etiquetas: bd, excel
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 20:03.