Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/11/2008, 21:30
manudferreiro
 
Fecha de Ingreso: enero-2007
Mensajes: 135
Antigüedad: 17 años, 3 meses
Puntos: 1
Para grabar un archivo dentro del servidor

Bueno gente.. otra vez molestandolos..
hace unos dias estuve por estos lados preguntando sobre como exportar los datos de mi web (en mysql) a un archivo exel. por suerte internet es grande y consegui un script que lo puedo adaptar perfectamente a mis necesidades....
pero...
el tema es el siguiente, yo no quiero que me lo exporte para guardar en el disco como es este ejemplo sino que lo guarde este .xls dentro del servidor..
se puede??
no pido que me lo hagan ni mucho menos, solo si saben si se puede y por donde buscar.
a continuacion les paso el codigo..
muchas gracias..
Código PHP:
<?
// Connect database.
mysql_connect("localhost","","");
mysql_select_db("tutorial");

// Get data records from table.
$result=mysql_query("select * from name_list order by id asc");

// Functions for export to excel.
function xlsBOF() {
echo 
pack("ssssss"0x8090x80x00x100x00x0);
return;
}
function 
xlsEOF() {
echo 
pack("ss"0x0A0x00);
return;
}
function 
xlsWriteNumber($Row$Col$Value) {
echo 
pack("sssss"0x20314$Row$Col0x0);
echo 
pack("d"$Value);
return;
}
function 
xlsWriteLabel($Row$Col$Value ) {
$L strlen($Value);
echo 
pack("ssssss"0x204$L$Row$Col0x0$L);
echo 
$Value;
return;
}
header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Content-Type: application/force-download");
header("Content-Type: application/octet-stream");
header("Content-Type: application/download");;
header("Content-Disposition: attachment;filename=orderlist.xls ");
header("Content-Transfer-Encoding: binary ");

xlsBOF();

/*
Make a top line on your excel sheet at line 1 (starting at 0).
The first number is the row number and the second number is the column, both are start at '0'
*/

xlsWriteLabel(0,0,"List of car company.");

// Make column labels. (at line 3)
xlsWriteLabel(2,0,"No.");
xlsWriteLabel(2,1,"Company");

$xlsRow 3;

// Put data records from mysql by while loop.
while($row=mysql_fetch_array($result)){

xlsWriteNumber($xlsRow,0,$row['id']);
xlsWriteLabel($xlsRow,1,$row['name']);

$xlsRow++;
}
xlsEOF();
exit();
?>