Fabio Donatantonio

Esportare una pagina web in Word o Excel con PHP  

realizzato da , il 11 gen. 2010, categoria PHP

PHP

Sempre più spesso sorge la necessità di permettere ad un utente di esportare il contenuto di una pagina web in un formato più gestibile e adeguatamente formattato. Pensiamo ad esempio ad una Web Application che mostra a video tabelle o grafici. L’obiettivo è far si che queste siano accessibili attraverso un documento di Word o di Excel.
Lo script genera “a volo” un documento Word o Excel che può essere successivamente salvato o aperto direttamente dal browser.

Vediamo il seguente esempio (Creo una pagina html che fornisce due link per esportare la tabella visualizzata):

<html>
<head><title>Mostro una tabella in html...</title></head>
<body>
<table border='1'>
<tr><th>Valore</th><th>Quantità</th></tr>
<tr><td>Valore A</td><td>200</td></tr>
<tr><td>Valore B</td><td>150</td></tr>
<tr><td>Valore C</td><td>180</td></tr>
</table>
<br/>
<a href='esporta.php?tipo=excel'>Esporta in Excel</a> | <a href='esporta.php?tipo=word'>Esporta in Word</a>
</body>
</html>

Creo lo script PHP, esporta.php (Da notare il valore del Content-Type all’interno dell’header):

<?php
if($_GET['tipo']=='excel'){
    $filename = "tabella.xls";
    header ("Content-Type: application/vnd.ms-excel");
    header ("Content-Disposition: inline; filename=$filename");
}else{
	if($_GET['tipo']=='word'){
		$filename = "tabella.doc";
		header("Content-Type: application/msword");
		header ("Content-Disposition: inline; filename=$filename");
	}else{
		exit;
	}
}
?>
<table border='1'>
<tr><th>Valore</th><th>Quantità</th></tr>
<tr><td>Valore A</td><td>200</td></tr>
<tr><td>Valore B</td><td>150</td></tr>
<tr><td>Valore C</td><td>180</td></tr>
</table>

L’esecuzione della pagina esporta.php si conclude con l’invio da parte del server di un documento .doc o .xls al browser.

Leggi gli articoli correlati:

  1. Refresh della pagina controllato dal Server – Evento lato Server
  2. URL della pagina corrente
  3. Attesa caricamento pagina in Javascript

Invia questo articolo Invia ad un amico (Send this to a friend)
 Stampa questo articolo (Print now)  Stampa questo articolo (Print now)
:, ,
Ti � piaciuto? Ti è piaciuto quest'articolo, guida o riflessione? Scoprine tanti altri nel menu articoli.

Torna sopra ↑

Spazio Pubblicitario

Commenta l'articolo - Ti risponderò in privato

Compila il modulo anti-spam sottostante

 

Fabio Donatantonio - Salerno - Città di Castello (PG) - fabio@donatantonio.net
Torna sopra ↑