pdf Content-Disposition filename wird nicht übernommen
adipure
- perl
Hallo,
ich hab folgendes Problem ich hol mir aus einer mysql datenbank einige datensätze die ich dann entweder als html im browser anzeigen lasse oder als pdf, welches dann speichern kann. dabei verwende ich html2ps um ein pdf file zu erstellen.
Mein Problem ist jetzt, dass das erzeugete pdf file immer so heißt, wie die Datei in der in den Befehl ausführe. pdf.perl -> pdf.pdf
Hab jetzt mit Content-Disposition = inline; filename=test.pdf versucht dem file einen eigenen namen zu geben. Aber irgendwie ignoriert er das.
Hätte jemand vl eine Tipp für mich??
Danke
Lg
Mein Problem ist jetzt, dass das erzeugete pdf file immer so heißt, wie die Datei in der in den Befehl ausführe. pdf.perl -> pdf.pdf
Hab jetzt mit Content-Disposition = inline; filename=test.pdf versucht dem file einen eigenen namen zu geben. Aber irgendwie ignoriert er das.
Dann machst du etwas falsch. Was genau gibt denn dein Skript als Header aus?
Struppi.
Mein Problem ist jetzt, dass das erzeugete pdf file immer so heißt, wie die Datei in der in den Befehl ausführe. pdf.perl -> pdf.pdf
Hab jetzt mit Content-Disposition = inline; filename=test.pdf versucht dem file einen eigenen namen zu geben. Aber irgendwie ignoriert er das.Dann machst du etwas falsch. Was genau gibt denn dein Skript als Header aus?
Struppi.
Ich geb folgendes aus:
print "Content-type:application/pdf\n";
print "Content-Disposition: inline; filename=test.pdf\n";
print "Cache-Control: no-cache\n\n";
Ich geb folgendes aus:
print "Content-type:application/pdf\n";
print "Content-Disposition: inline; filename=test.pdf\n";
print "Cache-Control: no-cache\n\n";
Wenn ich das ausführe geht bei mir der PDF Reader auf. Funktioniert also.
Aber eigentlich war meine Frage ja eine andere, was gibt das Skript aus, nicht was versuchst du auszugeben.
Struppi.
Ich geb folgendes aus:
print "Content-type:application/pdf\n";
print "Content-Disposition: inline; filename=test.pdf\n";
print "Cache-Control: no-cache\n\n";Wenn ich das ausführe geht bei mir der PDF Reader auf. Funktioniert also.
Aber eigentlich war meine Frage ja eine andere, was gibt das Skript aus, nicht was versuchst du auszugeben.Struppi.
Ja das Pdf erzeugen funktioniert ja bei mir eh auch, mein Problem ist das wenn ich es dann Speichern möchte immer der Dateiname pdf.pdf vorgeschlagen wird. Das möchte ich ändern!!!
Skriptausgabe:
Content-type:application/pdf
Content-Disposition: inline; filename=results.pdf
Cache-Control: no-cache
....
Moin Moin!
Ja das Pdf erzeugen funktioniert ja bei mir eh auch, mein Problem ist das wenn ich es dann Speichern möchte immer der Dateiname pdf.pdf vorgeschlagen wird. Das möchte ich ändern!!!
Sir Terry Pratchett, OBE, zu einem Deiner kleineren Probleme
Content-Disposition: inline; filename=results.pdf
"inline" und "filename" schließen sich zwar nach RFC2183 wohl nicht aus, aber "filename" hat bei "inline" keinen Sinn. Entweder willst Du die Resource zur Ansicht ("inline") ausliefern, oder aber vorschlagen, sie unter einem bestimmten Namen zu speichern. Im zweiten Fall würdest Du aber "attachment" statt "inline" benutzen. Und im ersten Fall werden wohl die meisten Browser die "filename"-Angabe stumpf ignorieren und stattdessen typischerweise aus der URL einen Dateinamen ableiten.
Der einfachste Weg dürfte also sein, die PDF-Resource unter einer URL auszuliefern, die auf "/result.pdf" endet (plus ggf. einem Query-String), und auf das ganze Theater mit Content-Disposition zu verzichten.
Alexander
ja danke für deine Hilfe, hab das gestern dann auch noch so realisiert und funktioniert einwandfrei.
Weil im prinzip will ich das pdf ja eh speichern deswegn hätt ich gleich drauf kommen können das ich attachment nehmen sollte.. naja..
jetzt passts
Danke