Foros del Web » Programando para Internet » PHP »

de php a excel

Estas en el tema de de php a excel en el foro de PHP en Foros del Web. hola necesito su ayuda por favor. tengo una página con un div con un id cualquiera. la idea es que a través de un popup ...
  #1 (permalink)  
Antiguo 13/05/2008, 07:39
 
Fecha de Ingreso: octubre-2005
Mensajes: 95
Antigüedad: 18 años, 5 meses
Puntos: 1
de php a excel

hola
necesito su ayuda por favor.
tengo una página con un div con un id cualquiera.
la idea es que a través de un popup pueda capturar el contenido del div y exportalo a excel.

he intentado de varias formas pero no me resulta.
lo que me interesa es saber como lo hago desde la ventana popup para que se transforme en excel.

de momento solo he logrado capturar el contenido del div desde el popup con:

Código PHP:
<html>
<
head>
</
head>
<
body>
<
script language="javascript">
       var 
contenido window.opener.document.getElementById('resultados').innerHTML;
    
document.write(contenido);
</script>
</body>
</html> 
se que hay unos headers que se usan para exportar a excel, pero no me funcionan. General el xls, pero sin contenido.


gracias de antemano por su ayuda

Christian
  #2 (permalink)  
Antiguo 13/05/2008, 08:29
Avatar de ferbux  
Fecha de Ingreso: mayo-2007
Ubicación: por ahí intentado ayudar
Mensajes: 823
Antigüedad: 16 años, 11 meses
Puntos: 6
Re: de php a excel

Prueba llamarlo asi, tal vez te ayude un poco.


Código:
<?php
include("../../config.inc.php");
protect();

$DB = NewADOConnection('mysql');
$DB->Connect('server', 'user', 'password', 'nombre_de_la_bd');


$link = mysql_connect("server", "user", "password");
             mysql_select_db("nombre_de_la_bd", $link);

if (isset($_GET["imprimir"]) or 1) {
    

    $data = '"'."Titulo de tu documento".'",';
    $data .= "\n";
    
    $data .= '"'."REPORTE".'"'."\n";
    $data .="\n";
    

    $query = "SELECT * FROM tabla";
    $result = $DB->Execute($query) or die($DB->ErrorMsg()."<br />".$query);
    $result = $result->GetArray();
    

    //Estos son los encabezados de tus columnas
    $data .= '"'."Cantidad".'",';
    $data .= '"'."Descripción".'",';
    $data .= '"'."Precio unitario".'",';
    $data .= '"'."Total".'",'."\n";
    $ii = count($result);
    $no = 1;
	
    //aquí tomas los valores de cada registro que estas mostrando (cantidad, descr... son los nobres con que definites a los campos de tu tabla)	
    for($i = 0; $i < $ii; $i++){
                $data .= '"'.$result[$i]["cantidad"].'",';
                $data .= '"'.$result[$i]["descr"].'",';
	$data .= '"'.$result[$i]["prec_uni"].'",';
	$data .= '"'.number_format($result[$i]["total"], 2).'",';
                $data .= "\n";
        
    }
	
	
 
    header('Content-Length: ' . strlen($data));
    header('Content-Type: application/xls');
    header('Content-Disposition: filename=exportacion_a_excel.csv');
    print($data);
}
?>
__________________
"Eres grande por que caminas entre gigantes"
  #3 (permalink)  
Antiguo 13/05/2008, 10:26
Avatar de seik!  
Fecha de Ingreso: mayo-2006
Mensajes: 492
Antigüedad: 17 años, 10 meses
Puntos: 6
Re: de php a excel

PHP no es compatible directamente con los productos microsoft... tal como menciona FERBUX debes investigar sobre la extension ".csv" esta es compatible con excel y php..

el script q proponen es bastante util.

Saludos,
__________________
sEIK! -Chile-
Analista Programador.
  #4 (permalink)  
Antiguo 13/05/2008, 10:58
 
Fecha de Ingreso: octubre-2005
Mensajes: 95
Antigüedad: 18 años, 5 meses
Puntos: 1
Re: de php a excel

Cita:
Iniciado por seik! Ver Mensaje
PHP no es compatible directamente con los productos microsoft... tal como menciona FERBUX debes investigar sobre la extension ".csv" esta es compatible con excel y php..

el script q proponen es bastante util.

Saludos,
estoy a punto de lograrlo..si lo hago lo posteo..
la gracia de esto es que no tengo que procesar la consulta 2 veces...
simplemente tomo el contenido del div que tiene los datos con los resultados y los exporto a excel.

asi libero al servidor un poco de realizar 2 veces la misma consulta

chau
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 04:06.