Ich benutze Dompdf, um ein PDF-Dokument (im laufenden Betrieb) zu erstellen. Ich muss auch irgendwelche Daten in dieses pdf posten, also benutze ich Ajax.Öffnen Sie ein neues Fenster in AJAX-Erfolg, um die PDF anzuzeigen
Dies ist die PHP dompdf:
<?php
class Dompdfgenerator
{
public function generate($html,$filename){
define('DOMPDF_ENABLE_AUTOLOAD', false);
require_once("./vendor/dompdf/dompdf/dompdf_config.inc.php");
$dompdf = new DOMPDF();
$dompdf->load_html($html);
$dompdf->render();
$dompdf->stream($filename.'.pdf',array("Attachment"=>0));
}
}
Also, ich AJAX verwenden eine Menge Daten, um zu Posten pdf-Datei auf eine PHP-Datei wie diese zu erstellen.
Dies ist die Ajax:
var result = $("#hasil-pencarian").clone().find('td:last-child').remove().end().html();
$.ajax({
url: "<?= site_url('members/megumi/cek_list_wire_rod/generate_pdf_laporan') ?>",
type: 'POST',
data: {
result: result,
id_pendukung: $('.printLaporan').attr('data-id')
},
dataType: 'json',
success: function (response) {
open a new window
},
error: function() {
alert('Terjadi masalah di server saat print laporan');
}
});
Und das ist die PHP-dompdf zu verwenden.
public function generate_pdf_laporan() {
$this->load->library('dompdfgenerator');
$data= array(
'result' => $this->input->post('result')
);
$html = $this->load->view('members/megumi/check_list_of_wire_rod/v_laporan_check_list', $data, true);
$this->dompdfgenerator->generate($html, 'contoh');
}
Dies ist der html einem pdf
<!DOCTYPE html>
<html>
<head>
<title>Report Table</title>
<style type="text/css">
#outtable{
padding: 20px;
border:1px solid #e3e3e3;
width:600px;
border-radius: 5px;
}
.short{
width: 50px;
}
.normal{
width: 150px;
}
table{
border-collapse: collapse;
font-family: arial;
color:#5E5B5C;
}
thead th{
text-align: left;
padding: 10px;
}
tbody td{
border-top: 1px solid #e3e3e3;
padding: 10px;
}
tbody tr:nth-child(even){
background: #F6F5FA;
}
tbody tr:hover{
background: #EAE9F5
}
</style>
</head>
<body>
<div id="outtable">
<table>
<thead>
<tr>
<th class="short">No</th>
<th class="normal">First Name</th>
<th class="normal">Last Name</th>
<th class="normal">Username</th>
</tr>
</thead>
<tbody>
<?php echo $result ?>
</tbody>
</table>
</div>
Wie kann ich diesen html pdf in ein neues Browserfenster in Ajax-Erfolg openede wird machen zu sein, jeder Vorschlag ? Danke für die Hilfe, es so geschätzt.
Wenn Sie AJAX waren verwenden zu sagen, es war erfolgreich, was Sie brauchen um die PDF lokal auf dem Server zu speichern und einen Verweis auf den gespeicherten Speicherort auf dem zurückkehrenden AJAX bereitzustellen; in dem Sie den Benutzer auch leiten. – MackieeE
Nicht ein genaues Duplikat, aber das [link] (http://stackoverflow.com/questions/9399354/how-topen-a-new-window-and-insert-html-into-it-using-jquery) löst das, wonach du fragst. – Dacklf