Ver Mensaje Individual
  #1 (permalink)  
Antiguo 16/06/2009, 15:19
Avatar de vITTY
vITTY
 
Fecha de Ingreso: enero-2006
Mensajes: 139
Antigüedad: 18 años, 11 meses
Puntos: 1
Pregunta Headers con jquery

Hola, estoy intentando exportar una consulta sql que genero desde php con jquery, pero tengo problemas con los headers.

La forma en la que estoy intentando hacerlo es la siguiente.

Código PHP:

Código PHP:
public function csv($query,$tabla){
                
        
$resultado=$this->db->ejecutarQuery($query);
        
$fields=$this->db->QueryArray("SHOW COLUMNS FROM ".$tabla."");
        
        
            
$out '';

            
// Cuento las columnas
            
$columns mysql_num_fields($resultado);
            
            
// Put the name of all fields
            
for ($i 0$i $columns$i++) {
                    
$l=$fields["$i"];
                
$out .= '"'.$l.'",';
            }
            
            
$out .="\n";
            
            
// Add all values in the table
            
while ($l mysql_fetch_array($resultado)) {
                for (
$i 0$i $columns$i++) {
                    
$out .='"'.$l["$i"].'",';
                }
            
$out .="\n";
            }
            
            
header('Content-Type: text/html; charset=iso-8859-1');
            
header("Content-type: text/x-csv");
            
header("Content-type: application/csv");
            
header("Content-Disposition: attachment; filename=resultado.csv");
            return 
$out;
            exit;
        
// end function 
Esto funciona bien.. pero mi intención es utilizar esta función para implementarla de esta forma.

Código js:
Ver original
  1. function Exportar() {
  2.          $.ajax({
  3.          type: "POST",
  4.          dataType: "html",
  5.          url: "admin.php?accion=csv",
  6.          
  7.                  beforeSend:  function(objeto)    {$("#registros").html(loading);},
  8.          
  9.          success:       function(html)    {
  10.              html.setRequestHeader("Content-Disposition: attachment; filename=resultado.csv");
  11.              $("#registros").html(data);
  12.             }
  13.          });
  14. }

Esto no funciona pero lo pongo para que vean hasta adonde llegue.

Estuve leyendo que la cabecera tendría que estar dentro del success pero no entiendo como hacerlo.

Gracias por adelantado.