Export von Abfragedaten aus MySQL nach Excel

grillmeister

Grünschnabel
Hallo!

Ich möchte Daten aus einer Abfrage aus einer MySQL-Datenbank in einer Excel Tabelle darstellen. Wie kann ich das denn am Besten und unkompliziertesten realisieren. Ich habe bei den Usern nicht die Möglichkeit, auf den Rechnern ODBC-Datenquellen einzurichten. Am liebsten würde ich auf Knopfdruck eine Datei erzeugen, die dann mit Spaltenüberschriften direkt in Excel geöffnet werden kann (CSV?).

Danke für die Hilfe
Steffen
 
Sorry...hätte vielleicht dazu schreiben sollen, dass der User das mit einem Mouseclick machen können sollte, ohne dazu aus seinem Web-Frontende mit Eingabemasken rausspringen zu müssen.
 
Dann mach doch mal so einen Export, schau Dir die Datei an und mache dieselbe Ausgabe mit Deinen Daten auf einen Klick. Das schiebst Du an den Browser und gibst dem ganzen den entsprechenden Header, dass die Datei gleich im richtigen Programm geöffnet bzw. zum Download angeboten wird.
 
hpvw hat gesagt.:
Dann mach doch mal so einen Export, schau Dir die Datei an und mache dieselbe Ausgabe mit Deinen Daten auf einen Klick.
Also einfach mit PHP einen String erzeugen, der mit Kommas und \r \n getrennt ist, wenn ich Dich richtig verstehe

hpvw hat gesagt.:
Das schiebst Du an den Browser und gibst dem ganzen den entsprechenden Header, dass die Datei gleich im richtigen Programm geöffnet bzw. zum Download angeboten wird.
So, und hier sind wir jetzt beim richtigen Problem. Wie muss der Header aussehen, damit der Browser dazu veranlasst wird, die Daten als csv in Excel einzulesen?
 
grillmeister hat gesagt.:
Also einfach mit PHP einen String erzeugen, der mit Kommas und \r \n getrennt ist, wenn ich Dich richtig verstehe
Genau so, das CS in CSV steht nämlich für Comma seperatet (durch Komma getrennt).


grillmeister hat gesagt.:
So, und hier sind wir jetzt beim richtigen Problem. Wie muss der Header aussehen, damit der Browser dazu veranlasst wird, die Daten als csv in Excel einzulesen?
Google-Suche nach: header download php
1. Ergebnis
Die Reihenfolge der Header-Teile ist wichtig! Statt attachment kannst Du auch inline nehmen.
 
Alternativ habe ich neulich mal folgendes probiert, was ich recht nett fand:
Export als XML. Verfügt man über Excel 2003, kann man die XML-Datei direkt öffnen und sieht dann schön im XML-Panel die Struktur der Datenbank oder Tabelle. Gewünschte Tabellen oder Felder kann man dann aus dem Panel in das Excel-Sheet ziehen und sie werden dann automatisch zu aktualisierbaren Bereichen, die man auch elegant sortieren lassen kann. Anschließend als Excel-Tabelle speichern.
Nun lassen sich bei jedem Öffnen der Excel-Tabelle bequem die Daten aus der XML-Datei neu auslesen/aktualisieren.
Das ist eine Alternative zu csv, da man bei CSV immer nur ganz einfache Tabellen erhält und keine "Excel-Formatierungen" transportiert werden.

Mfg,
Stefan.
 
Zurück