Veröffentlicht 14. Juli 200421 j Hallo, aus meiner MySQL-Datenbank können vordefinierte Abfragen als PDF-Dateien gespeichert werden. Ich bin jetzt auf der Suche, daß der Name der erzeugten PDF-Datei jeden Tag das Datum enthält (also heute file20040714.pdf) oder so ähnlich. Weiß jemand, ob (und wie) sowas - idealerweise in PHP - realisierbar ist? Wir haben hier leider ein paar DAU's zu viel und aus diesem Grund war es ein Wunsch des Managements, auch sowas zu realisieren... :eek: (Dies nur zur Erklärung; mir ist schon klar, daß man das ein User normalerweise auch machen kann, wenn er die Datei speichert. Ich würde diesen Namen nur gerne vorgeben. Danke + Gruß -etops-
14. Juli 200421 j so ungefähr? $FileName = 'file'. date('Ymd'); [/PHP] weiter gehts dann hier: Allgemeines: http://de2.php.net/manual/de/ref.filesystem.php Dateien erstellen: http://de2.php.net/manual/de/function.fopen.php
14. Juli 200421 j Nicht "so ungefähr"... :floet: So genau Danke! 1. selbst ist der Mann 2. soll ich deine Arbeit machen? 3. ich habe dir alle nötigen Quellen gegeben, sieh dort nach und wenn du wieder Probleme hast, melde dich erneut
14. Juli 200421 j Hey, sorry wenn das mißverständlich war. Ich meinte damit Dein Zitat "...so ungefähr" . Das war nicht ungefähr das, was ich wollte, sondern das war es exakt. Jetzt funktionierts!! Danke
14. Juli 200421 j Hey, sorry wenn das mißverständlich war. Ich meinte damit Dein Zitat . Das war nicht ungefähr das, was ich wollte, sondern das war es exakt. Jetzt funktionierts!! Danke Oh Sorry, jetzt beim 2. durchlesen, hab ichs auch so verstanden, wie du es gesagt hast
20. Juli 200421 j Ich muß meine Frage von oben nochmal erweitern: Mein "Ziel" ist es jetzt, die pdf-Datei nicht in das gleiche Verzeichnis zu schreiben sondern in (idealerweise beliebiges) Verzeichnis auf dem Server. Für den Moment wäre ich aber auch erstmal damit zufrieden, einfach ein Verzeichnis, z.B. auf dem Desktop festlegen zu können... Leider mach ich irgendetwas falsch, so daß es nicht geht... Bis jetzt bin ich etwa so weit: $dir = "c:/Desktop/pdf-files"; if (!file_exists($dir)) { mkdir ($dir,0777); } $fname = tempnam($dir.'/','pdf').'.pdf'; $fp = fopen($fname, 'wb'); fwrite($fp,$pdfcode); fclose($fp); [/PHP] Im Moment wird zwar das in $dir geplante Verzeichnis angelegt, aber die PDF-Dateien sehen etwa so aus: pdf2257.tmp.pdf Mir ist übrigens klar, daß das jetzt mit dem genannten Quelltext gar nicht die Ausgabe in einen Dateinamen wie file20040720.pdf geben kann, aber es wäre ja schon mal sehr nützlich wenn das ".tmp" aus dem Dateinamen verschwinden würde... Versucht hatte ich es mit diesem Quelltext, aber das war wohl nix: [PHP] $dname = fopen('file'. date('Ymd-Hi').'.pdf', 'wb'); fwrite($dname, $pdfcode); fclose($dname); $fname = tempnam($dir.'/','pdf').'.pdf'; $fp = fopen($fname, 'wb'); fwrite($fp,$pdfcode); fclose($fp); Danke für Fingerzeige, was hier falsch ist :confused: Gruß -etops-
20. Juli 200421 j kann das sein, daß tempnam() das tmp hintendranhängt? kann ich mir gut vorstellen. Mußt halt anstelle von tempnam() substr(tempnam($dir.'/','pdf'),0,-4) verwenden. Nur ne Idee
20. Juli 200421 j Ich muß meine Frage von oben nochmal erweitern: Mein "Ziel" ist es jetzt, die pdf-Datei nicht in das gleiche Verzeichnis zu schreiben sondern in (idealerweise beliebiges) Verzeichnis auf dem Server. Für den Moment wäre ich aber auch erstmal damit zufrieden, einfach ein Verzeichnis, z.B. auf dem Desktop festlegen zu können... Leider mach ich irgendetwas falsch, so daß es nicht geht... Bis jetzt bin ich etwa so weit: $dir = "c:/Desktop/pdf-files"; if (!file_exists($dir)) { mkdir ($dir,0777); } $fname = tempnam($dir.'/','pdf').'.pdf'; $fp = fopen($fname, 'wb'); fwrite($fp,$pdfcode); fclose($fp); [/PHP] Im Moment wird zwar das in $dir geplante Verzeichnis angelegt, aber die PDF-Dateien sehen etwa so aus: pdf2257.tmp.pdf Mir ist übrigens klar, daß das jetzt mit dem genannten Quelltext gar nicht die Ausgabe in einen Dateinamen wie file20040720.pdf geben kann, aber es wäre ja schon mal sehr nützlich wenn das ".tmp" aus dem Dateinamen verschwinden würde... Versucht hatte ich es mit diesem Quelltext, aber das war wohl nix: [PHP] $dname = fopen('file'. date('Ymd-Hi').'.pdf', 'wb'); fwrite($dname, $pdfcode); fclose($dname); $fname = tempnam($dir.'/','pdf').'.pdf'; $fp = fopen($fname, 'wb'); fwrite($fp,$pdfcode); fclose($fp); Danke für Fingerzeige, was hier falsch ist :confused: Gruß -etops- Warum verwendest du überhaupt eine temporäre Datei? $dir = "c:/Desktop/pdf-files"; if (!file_exists($dir)) { mkdir ($dir,0777); } $fname = $dir. '/' .date('Ymd-Hi'). '.pdf'; $fp = fopen($fname, 'wb'); fwrite($fp,$pdfcode); fclose($fp); [/PHP]
20. Juli 200421 j Danke!!!!!!!!!!!!!!!!!!!!!!!!!!! Warum hab ich nicht schon früher gefragt??!! :confused:
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.