»» open (FILE,"4008420.pdf") die "Can't Open 4008420.pdf!\n";
Grundsätzlich nicht daneben. Wie gesagt, liegt die Datei wirklich im gleichen Verzeichnis, wie das Script?
Sie liegt im gleichen Verzeichnis -> locale adresse: d:\inetpub\scripts
»» open (FILE,"4008420.pdf:raw") die "Can't Open 4008420.pdf!\n";
also ":raw" habe ich im Zusammenhang mit der open-Funktion noch nicht gesehen. Wo hast Du sowas her?
:raw diese anweisung habe ich im 'perldoc open' gefunden
Du mußt _zuerst prüfen, ob Du die PDF-Datei überhaupt ausgeben kannst. Dazu genügt nicht, $nummer zu prüfen. Kannst Du die Datei überhaupt einlesen.
Eigentlich wollte ich ja keinen Code hier herstellen, aber ich denke es wird wohl besser sein:
Danke
Ich gehe jetzt davon aus, daß die PDF-Datei im Ordner "D:\Dokumente\PDF" liegt
Sie liegt im Ordner d:\inetpub\scripts
if(open (FILE,"D:\Dokumente\PDF\4008420.pdf")) # datei aufmachen
das ist aber eine lokale adresse, die ich vom client so nicht nehmen kann, oder woher soll der client
das laufwerk d kennen?, ich habe dort mal die url eingegeben, also http://www..........
print header('application/pdf'); #erst jetzt pdf-header ausgeben
else # wenn das oeffnen der datei nicht funktionierte
{
$fehler = "Datei konnte Nicht gelesen werden";
}
}
else # wenn die nummer falsch ist
{
$fehler = "Nummer falsch";
}hier wird die fehlermeldung an den browser gesendet, wenn nicht ohnehin die pdf-datei gesendet wurde.
print header('text\html');
print "<html><body>$fehler</body></html>";
er läuft immer in die fehleranweisung hinein, und will als folge die script datei speichern -> 'text/html'
die pdf-datei wird überhaupt nicht "angefasst", obwohl pfad und dateiangebe richtig sind???
Noch etwas: Wenn Du jetzt einfach den Code unreflektiert hernimmst und sagst "Wunderbar, brauch ich nicht mehr weitersuchen", aber nicht verstanden hast, was in jeder Zeile passiert und warum das genau dort passiert, dann wirst Du beim nächsten script wieder auf die schnauze fallen, und beim übernächsten, und beim überübernächsten ...
keine sorge, ich bin jede einzelne zeile durchgegangen, und bei unklarheiten nachgeschaut
Ich würde Dir empfehlen, zumindest in der Dokumentation von Perl nachszulesen, was die einzelnen Funktionen wirklich machen. Und dann solltest Du Dir auch ein gutes Buch kaufen, (O'Reilly hat da imho die besseren) um die Materie von Grund auf zu verstehen.
Nur so hingebastelt und dann hoffen, daß irgendwer sich schon erbarmt und das ganze geraderückt ist auf Dauer auch nicht das wahre.
ein buch habe ich leider noch nicht, werde ich mir aber bestimmt noch anschaffen
Das sollst Du jetzt nicht als Angriff auf Dich werten, sondern einfach als Vorschlag.
Grüße
Klaus