Servus zusammen,
ich möchte in meinem woocommerce-Shop einen Button, welcher zu dem entsprechenden Produkt eine PDF-Datei erstellt.
Dort sollen die Adresse des gerade eingeloggten Users, der Wunschpreis, welcher zuvor in ein Formularfeld eingetragen wird und die ganzen Eigenschaften des Produktes enthalten sein.
Momentan teste ich noch lokal am PC mit Xampp. Zur Erstellung der PDF verwende ich dompdf. Das funktioniert soweit auch.
Das größte Problem ist aber aktuell, dass die PDF-Datei immer beschädigt ist, sobald ich den Code in eine If-Schleife einfüge oder den Code mit der inlcude-Funktion ausführe.
Ansonsten bräuchte ich noch Hilfe für die entsprechenden Variablen um User-Adresse und die Eigenschaften des Produktes von Wordpress auszulesen.
index.php (wenn ich dies so ausführe über localhost/dompdf/index.php funktioniert alles problemlos)
<?php
$test1 = "Max Mustermann"; // Platzhalter für Wordpress-Variable Name
$test2 = "Musterstraße 17"; // Platzhalter für Wordpress-Variable Straße
$test3 = "12345 Musterstadt"; // Platzhalter für Wordpress-Variable Ort
$eig1 = "blau"; // Platzhalter für Wordpress-Variable Produkt Eigenschaft1
$eig2 = "10 kg"; // Platzhalter für Wordpress-Variable Produkt Eigenschaft2
$eig3 = "10 W"; // Platzhalter für Wordpress-Variable Produkt Eigenschaft3
require_once("dompdf/dompdf_config.inc.php");
spl_autoload_register('DOMPDF_autoload');
function pdf_create($html, $filename, $paper, $orientation, $stream=TRUE)
{
$dompdf = new DOMPDF();
$dompdf->set_paper($paper, $orientation);
$dompdf->load_html($html);
$dompdf->render();
$dompdf->stream($filename.".pdf");
}
$filename = 'file_name';
$dompdf = new DOMPDF();
$html = '<html><body>'.
"<h1>PDF erstellen</h1>".
"<p>Name: ". $test1 ." <br />
Straße: ". $test2 ." <br />
Ort: ". $test3 ." </p>".
"<p>Eigenschaft1: ". $eig1 ." <br />
Eigenschaft2: ". $eig2 ." <br />
Eigenschaft3: ". $eig3 ." </p>".
'</body></html>';
pdf_create($html, $filename, 'A4', 'portait');
?>
Alles anzeigen
formular.php (wenn ich hier dompdf/index.php über include und die If-Schleife ausführe, um zu prüfen ob der Button gedrückt wurde, wird die PDF-Datei zwar erstellt, aber die PDF-Datei ist beschädigt und lässt sich nicht öffnen; auch wenn ich hier die If-Schleife weg lasse oder den Code entsprechend in den oberen Code einbaue, ist die PDF beschädigt)
<form action="formular.php" method="post" >
<p>Wunschpreis: <input type="text" name="preis" /></p>
<p><input type="submit" name="mein_button" value="PDF erstellen" /></p>
</form>
<?php
if(isset($_POST['mein_button']))
{
include("dompdf/index.php"); // dompdf ausführen
}
?>
Alles anzeigen
Das wichtigste für mich wäre also jetzt erstmal, dass ich die PDF durch das Drücken eines Buttons erzeugen kann. Ansonsten bräuchte ich wie gesagt noch die Variablen für User Adresse (müsste wahrscheinlich irgendwas mit $user_.... sein) und die Eigenschaften des Produktes.
Danke schon mal für jede Hilfe.