сохранение сгенерированного файла jsPDF на сервер на WordPress - PullRequest
0 голосов
/ 27 января 2020

привет, я использую jspdf для генерации некоторого файла, и я могу сохранить его, но мне нужно, чтобы он был сохранен и сохранен на сервере, а не в WordPress. Я искал и нашел много кодов и убедился, что ajax локализован на моя тема WordPress, но я все еще не могу заставить ее работать, вот мой код:

  $(".certificate-btn").click(function(){
    function html() {
        var doc = new jsPDF("l", "mm", "a4");
        var width = doc.internal.pageSize.getWidth();
        var height = doc.internal.pageSize.getHeight();
        var imgData = "#";
        var barCode = $("#qrcode img").attr("src");
        var givnar = "<?php the_title(); ?>";

        doc.addImage(imgData, "JPEG", 0, 0, width, height);
        doc.setFont("Tajawal-Regular");
        doc.setFontSize(40);
        doc.text(givnar, 250, 84, {align: "right"});
        doc.setFontType("bold");
        doc.setTextColor(209, 52, 52);
        doc.setFontSize(26);
        doc.text(218, 124, "<?php echo $hours; ?>");
        doc.addImage(barCode, "JPEG", 248, 163, 35, 35);

        var pdf = doc.output(); //returns raw body of resulting PDF returned as a string as per the plugin documentation.
        var data = new FormData();
        data.append("data" , pdf);
        var xhr = new XMLHttpRequest();
        xhr.open( "post", "upload.php", true ); //Post to php Script to save to server
        xhr.send(data);
    }
    html();
});

вот также мой upload.php файл, он находится в той же директории

if(!empty($_POST['data'])){
    $data = $_POST['data'];
    $fname = "test.pdf"; // name the file
    $file = fopen("testa/pdf/" .$fname, 'w'); // open the file path
    fwrite($file, $data); //save data
    fclose($file);
} else {
    echo "No Data Sent";
}

, поэтому что-то не так с моим кодом или он просто не будет работать на WordPress вообще? заранее спасибо

...