【发布时间】:2022-04-14 09:42:55
【问题描述】:
我是这里的新手,使用 javascript 和 php。
我无法将带有 jsPDF 的 PDF 保存到服务器上的本地存储(自动生成)。过去可以,但现在我只是将 Canvas (javascript) 放入我的 HTML 中,它不起作用。
欢迎任何帮助:)
它适用于 doc.save javascript,但不会自动保存到本地。
Javascript:
let doc = new jsPDF('p', 'pt', 'a4');
doc.addHTML(document.body, function () {
//this works but not store in local automatically
// doc.save('test.pdf');
//store to local storage
var pdf = btoa(doc.output());
$.ajax({
method: "POST",
url: "pdftoserver.php",
data: {data: pdf},
}).done(function(data){
console.log(data);
});
});
}
PHP:
<?php
session_start();
$pdfpath=$_SESSION['pdfpath']; //heredated, only path and name for pdf (with date...)
if(!empty($_POST['data'])){
$data = base64_decode($_POST['data']);
// print_r($data);
file_put_contents($pdfpath, $data );
} else {
echo "PDF failed";
}
exit();
?>
我的 HTML 头脚本:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/html2canvas/0.4.1/html2canvas.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/1.0.272/jspdf.debug.js"></script>
<script src="canvas.js"></script> <!--for paint and sign on html-->
【问题讨论】:
-
看起来您在此处发布的 js 末尾有一个额外的 }。是不是笔误?
-
感谢您的回复。在第一行我有一个功能。这个 } 关闭它。
标签: javascript php ajax jspdf