Ich benutze jsPDF, um ein pdf auf Klienten-Seite zu erzeugen. Mit der Funktion doc.save ('Dateiname.pdf') kann ich es herunterladen. Nun muss ich es auf dem Server speichern, also sende ich die pdf-Daten mit .ajax() und empfange es mit einem PHP-Skript, aber die Bilder auf der generierten pdfURL werden nicht angezeigt (http://mydomain/tmp/test.pdf); zeigt nur den Text an.wie man pdf von Ajax-Daten zum Server hochlädt (mit jsPDF)
Können Sie mir bitte eine Hand geben?
Mein js Code:
//doc.save('test.pdf'); WORKS WELL
var pdf = doc.output();
$.ajax({
method: "POST",
url: "inc/test.php",
data: {data: pdf},
}).done(function(data){
console.log(data);
});
Das PHP-Skript: http://control.edge-cdn.com.ar/tmp/test.pdf
Und das ist die mit dem erzeugten:
<?php
if(!empty($_POST['data'])){
$data = $_POST['data'];
print_r($data);
file_put_contents("../tmp/test.pdf", $data);
} else {
echo "No Data Sent";
}
exit();
?>
Dies ist die pdf nach dem PHP-Scripting proccess erzeugt wird doc.save() Funktion: http://control.edge-cdn.com.ar/repo/all.pdf Grüße!
Also test.pdf öffnet sich als PDF, es enthält nur nur Text mit gebrochenen Bildern? –
Öffnen Sie die beiden PDFs (die vom Server und die mit js gespeicherten) mit der gleichen Software auf demselben Computer? –
-> Können Sie mit js eine PDF-Datei aus dem doc.output() erzeugen; Daten? Vielleicht ist es diese Methode, die für diesen Fehler verantwortlich ist (und die doc.save() vielleicht ok) ... –