Excel Datei per PHP erstellen
Überall im Web sieht man Tabellen oder sonstige Daten, welche man gerne per Knopfdruck exportieren möchte.
Ob Tasklisten oder Projekttermine, ein Knopfdruck auf ein Icon
und Excel geht auf und zeigt die Daten an.
Das dies möglich ist, muss entweder ein spezieller Excel Generierer installiert werden, oder mit einem Trick gearbeitet werden.
Der Trick ist einfach, man generiere eine HTML-Tabelle und gebe dies als XLS aus, Excel liest das Format und konvertiert es, ohne das der Benutzer dies mitbekommt.
ls erstes müssen wir unserem Server seitigen PHP File mitteilen, das die Ausgabe als XLS erfolgen soll:
header("Content-type: application/vnd-ms-excel");
header("Content-Disposition: attachment; filename=Dateiname.xls");Anschliessend holen wir die Daten:
$db = mysql_connect('localhost','username','password');
$abfrage = mysql_query("SELECT * FROM `database`.`table` WHERE `oeffentlich`='1'",$db);
if (mysql_num_rows($abfrage) >= '1')
{
echo "<table width=\"100%\" cellpadding=\"1\" cellspacing=\"1\">";
while($row = mysql_fetch_assoc($abfrage))
{
echo "<tr>".
"<td>".$row['id']."</td>".
"<td>".$row['name']."</td>".
"<td>".$row['bearbeiter']."</td>".
"<td>".$row['status']."</td>".
"</tr>";
}
echo "</table>";
}Das PHP Generiert eine einfache HTML Tabelle, welche als “Dateiname.xls” dem Client zugeschickt wird (trotz er eine PHP Datei aufruft im Web), welche dann gespeichert oder direkt per Excel aufgemacht werden kann.



