mf_2
2007-02-23, 02:17:56
Hallo,
Ich muss von ein paar Internetseiten PDFs erstellen. Da habe ich dieses Script gefunden:
http://www.pdfwebx.com/pdf.aspx?url2pdf=http://www.google.com
Mit diesem Aufruf konvertiert es http://www.google.com in eine PDF.
Nun wollte ich das mittels PHP etwas automatisieren:
<?php
$char = array(":", "/", "?", "*", "|"); // Alles ersetzen, was Windows Dateinamen ned enthalten sollten ...
$replacestuff = "-"; // ... und mit einem - ersetzen
$url="http://www.google.com/"; // Test-URL, welche in eine PDF gespeichert werden soll
echo "<B>".$url."</B><P>"; // Ausgabe der URL, nur zur Kontrolle
$convertlink = "http://www.pdfwebx.com/pdf.aspx?url2pdf=".$url; // und jetzt bauen wir uns die URL für den Aufruf des Konverters
$url=str_replace($char,$replacestuff,$url); // die fraglichen Zeichen ersetzen
$handle = fopen ($convertlink, "r");
$newfile = fopen ($url.".pdf", "w");
$output = fread($handle,100000000);
fwrite($newfile, $output);
?>
Nun erstellt mir das Script zwar ne PDF, aber der Adobe Reader meint sie sei ungültig.
Wenn ich das ASP-Script manuell über den Firefox aufrufe, wird eine einwandfreie PDF erzeugt.
Ich habe aber noch nie mit Streams in PHP zu tun gehabt und vermutlich ist der Fehler sehr banal.
Könnt ihr mir weiterhelfen?
Ich muss von ein paar Internetseiten PDFs erstellen. Da habe ich dieses Script gefunden:
http://www.pdfwebx.com/pdf.aspx?url2pdf=http://www.google.com
Mit diesem Aufruf konvertiert es http://www.google.com in eine PDF.
Nun wollte ich das mittels PHP etwas automatisieren:
<?php
$char = array(":", "/", "?", "*", "|"); // Alles ersetzen, was Windows Dateinamen ned enthalten sollten ...
$replacestuff = "-"; // ... und mit einem - ersetzen
$url="http://www.google.com/"; // Test-URL, welche in eine PDF gespeichert werden soll
echo "<B>".$url."</B><P>"; // Ausgabe der URL, nur zur Kontrolle
$convertlink = "http://www.pdfwebx.com/pdf.aspx?url2pdf=".$url; // und jetzt bauen wir uns die URL für den Aufruf des Konverters
$url=str_replace($char,$replacestuff,$url); // die fraglichen Zeichen ersetzen
$handle = fopen ($convertlink, "r");
$newfile = fopen ($url.".pdf", "w");
$output = fread($handle,100000000);
fwrite($newfile, $output);
?>
Nun erstellt mir das Script zwar ne PDF, aber der Adobe Reader meint sie sei ungültig.
Wenn ich das ASP-Script manuell über den Firefox aufrufe, wird eine einwandfreie PDF erzeugt.
Ich habe aber noch nie mit Streams in PHP zu tun gehabt und vermutlich ist der Fehler sehr banal.
Könnt ihr mir weiterhelfen?