Zum Inhalt springen

Dateien mit flexiblem Dateinamen


Empfohlene Beiträge

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-

Link zu diesem Kommentar
Auf anderen Seiten teilen

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-

Link zu diesem Kommentar
Auf anderen Seiten teilen

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]

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...