Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

PHP Excel Datei erstellen und Speichern unter anbieten

Frage Entwicklung PHP

Mitglied: KgFmB

KgFmB (Level 1) - Jetzt verbinden

10.04.2007, aktualisiert 12.04.2007, 20273 Aufrufe, 3 Kommentare

Daten aus Datenbank in Excel exportieren und User die Möglichkeit zum "Speichern unter..." geben

Hallo zusammen,

mein neuestes anliegen, womit ich mal wieder zu Kämpfen hab ist folgendes:

Ich möchte einem User die Möglichkeit geben, per PHP Daten aus einer Datenbank (MSSQL) in eine Exceldatei zu exportieren.

Der Teil Daten aus Datenbank und in Excel packen funktioniert schon.
Nun möchte ich aber, dass der User den Speicherpfad für die erstellte Exceldatei frei wählen kann ermöglichen.
Da die Exceldatei z. Z. auf dem Webserver gespeichert wird, worauf der User ja keine Berechtigung haben soll und hat.

Ich stelle mir das so vor, ähnlich wie ich beim Import schon gemacht habe, eine Eingabe\Pfadauswahl bieten, in welchen die Datei letztenendlich gespeichert werden soll. Dabei sollte er auch die Möglichkeit haben auf ein Netzlaufwerk zugreifen zu können.

Gibt es irgendwelchen Beispielcode für ein solches Vorhaben?

Gruß

KgFmB
Mitglied: KgFmB
11.04.2007 um 12:02 Uhr
Hallo,

ist das geschilderte Vorhaben noch bei keinem vorgekommen?

Ich seh so häufig im Internet, dass ich eine Datei, auf meinem ausgewählten Speicherort Downloaden kann, was im Prinzip das ist was ich versuche zu erstellen.
Nur leider finde ich keine Codeschnippsel um dieses zu realisieren.


Gruß

KgFmB
Bitte warten ..
Mitglied: 4515
11.04.2007 um 14:52 Uhr
Hallo KgFmB!

Du hast also ein PHP-Skript auf einen Webserver (?) laufen, der auf eine MSSQL-Datenbank zugreift und Inhalt davon in eine Excel-Datei speichert (Speicherst Du die Daten in eine CSV-Datei?). Das Ergebnis speicherst Du dann auf dem Webserver ab.

Warum schickst Du dem User nicht die Daten sofort, ohne sie am Server zu speichern?

01.
 
02.
header('Content-Type: text/x-csv'); 
03.
 
04.
echo $daten
05.
 
außerdem gibt es noch die folgende Möglichkeit

PHP - Datei erstellen und zum Download anbieten

Mit PHP .pdf-Dateien zum Download anbieten

lg Levis
Bitte warten ..
Mitglied: KgFmB
12.04.2007 um 14:09 Uhr
Hallo levis24,

danke für deine Antwort, scheint so, als hätte dein Hinweis mich doch noch zum Ziel geführt.

Jedoch hab ich es mit

<?PHP

header("Content-type: application/octet-stream");
header("Content-Disposition: attachment; filename=\"$f_name\"");
$filesize = filesize($f_name);
header("Content-Length: $filesize");
readfile ("$file");
?>

lösen können.

Ausserdem kämpfte ich mit der Möglichkeit, nachdem ich die Datei gespeichert hatte, auf eine bestimmte Seite wieder zu gelangen.

Du musst dir folgendes Vorstellen:
Ich hab eine Web-Application mit Menübuttons oben, die auf allen Seiten der Web-Application hinterlegt sind.
Von diesen Buttons aus, erreiche ich verschiedene Seiten.
Z.B. Übersicht, Parameter, Excel Ex-\Import etc.

Meine Sache war nun noch mittels Export Daten aus der MSSQL DB in ein Excel-Datei zu exportieren, die dann der User weiterverarbeiten und anschliessend wieder Importieren kann.

Nachdem das mit dem Export und Speichern klappte, hatte ich das Problem, wie linke ich nach Abschluss wieder zurück auf die Seite mit der Gesamtübersicht?

Hab mir dann eine Vorlaufmaske erstellt, die die Menübuttons hat und die beim Aufruf automatisch eine weitere PHP-Seite aufruft, die mir den Export selbstständig macht.
Somit blieb meine Vorlaufmaske für den User sichtbar und der Zugriff über die Menüsteuerung erhalten.
Da ich in die PHP-Seite mit dem Quelltext zum Download der erstellten Exceldatei, keinen HTML-Code mehr einfügen durfte. ("Header schon gesendet" etc.)

Aber mit der Methode einer Vorlaufmaske.... FUNKTIONIERTS, ich bin begeistert.

Mein ehemaliker Praktikant hat 3,5 Wochen daran gesessen und es nicht optimal hinbekommen (trotz 8 Jahre Informatikerstudium) *grübbel*
Und ich sitz nun seit 3 Tagen dran und es läuft......

Gruß
KgFmB
Bitte warten ..
Ähnliche Inhalte
C und C++
C-sharp soll Datei von PHP speichern (3)

Frage von Yanmai zum Thema C und C ...

Microsoft Office
Excel 2010 braucht ewig für speichern unter (6)

Frage von zlatti75 zum Thema Microsoft Office ...

Entwicklung
Was brauche ich um über PHP eine Oberfläche zu erstellen? (10)

Frage von SIMONJAKOB zum Thema Entwicklung ...

Neue Wissensbeiträge
Sicherheit

Millionen Euro in den Sand gesetzt?

(3)

Information von transocean zum Thema Sicherheit ...

Sicherheit

How I hacked hundreds of companies through their helpdesk

Information von SeaStorm zum Thema Sicherheit ...

Heiß diskutierte Inhalte
Firewall
gelöst Firewall Firmeneimsatz (22)

Frage von wiesi200 zum Thema Firewall ...

Multimedia & Zubehör
gelöst 8 GB USB Stick besitzt nur noch 4 MB Kapazität (13)

Frage von Gwahlers zum Thema Multimedia & Zubehör ...

LAN, WAN, Wireless
Eine Netzwerkdose im Wechsel für zwei unterschiedliche Netze (11)

Frage von kartoffelesser zum Thema LAN, WAN, Wireless ...

Windows Server
ESXI Free Windows Server 2016 Datacenter aktivieren (10)

Frage von iDeathz zum Thema Windows Server ...