Foros del Web » Programando para Internet » PHP »

Como descargar tablas mysql por php con varios formatos

Estas en el tema de Como descargar tablas mysql por php con varios formatos en el foro de PHP en Foros del Web. bueno he estado leyendo la wiki de aqui muy buena por cierto y me consegui el siguiente codigo Código PHP: /* Mysql To Excel Generación de excel versión 1.0 Nicolás Pardo - 2007 */ ...
  #1 (permalink)  
Antiguo 22/07/2010, 19:28
 
Fecha de Ingreso: junio-2010
Ubicación: Venezuela, Zulia
Mensajes: 686
Antigüedad: 13 años, 9 meses
Puntos: 55
Como descargar tablas mysql por php con varios formatos

bueno he estado leyendo la wiki de aqui muy buena por cierto y me consegui el siguiente codigo

Código PHP:
/*
Mysql To Excel
Generación de excel versión 1.0
Nicolás Pardo - 2007
*/
#Conexion a la db
require_once('../cone.php');
$link=conectarse(); 

$tabla=$_POST["tabla"];
#Sql, acá pone tu consulta a la tabla que necesites exportar filtrando los datos que creas necesarios.
$sql "SELECT * FROM $tabla";
 
$r mysql_query($sql) or trigger_errormysql_error($link), E_USER_ERROR );
$return '';
if( 
mysql_num_rows($r)>0){
    
$return .= '<table border=1>';
    
$cols 0;
    while(
$rs mysql_fetch_row($r)){
        
$return .= '<tr>';
        if(
$cols==0){
            
$cols sizeof($rs);
            
$cols_names = array();
            for(
$i=0$i<$cols$i++){
                
$col_name mysql_field_name($r,$i);
                
$return .= '<th>'.htmlspecialchars($col_name).'</th>';
                
$cols_names[$i] = $col_name;
            }
            
$return .= '</tr><tr>';
        }
        for(
$i=0$i<$cols$i++){
            
#En esta iteración podes manejar de manera personalizada datos, por ejemplo:
            
if($cols_names[$i] == 'fechaAlta'){ #Fromateo el registro en formato Timestamp
                
$return .= '<td>'.htmlspecialchars(date('d/m/Y H:i:s',$rs[$i])).'</td>';
            }else if(
$cols_names[$i] == 'activo'){ #Estado lógico del registro, en vez de 1 o 0 le muestro Si o No.
                
$return .= '<td>'.htmlspecialchars$rs[$i]==1'SI':'NO' ).'</td>';
            }else{
                
$return .= '<td>'.htmlspecialchars($rs[$i]).'</td>';
            }
        }
        
$return .= '</tr>';
    }
    
$return .= '</table>';
    
mysql_free_result($r);
}
#Cambiando el content-type más las <table> se pueden exportar formatos como csv
header("Content-type: application/vnd-ms-excel; charset=iso-8859-1");
header("Content-Disposition: attachment; filename=$tabla_".date('d-m-Y').".xls");
echo 
$return
este codigo me funciona a la perfeccion, lo que hace es que me descarga la tabla completa que yo elija en formato excel .xls

ahora bien yo quisiera poder escoger en que formato quiero bajarlo, que podria variar en .sql, .csv, .xls que son los mas usados

si alguien sabe como hacerlo les agradezco la respuesta

Etiquetas: formatos, mysql, 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




La zona horaria es GMT -6. Ahora son las 01:37.