Hallo zusammen.
Ich entwickle einen neuen Webshop mit Opencart und stosse vor ein Problem. Ich möchte beim letzten Bestellschritt (Bestellung absenden) einen Code einbauen, so dass die Bestellung per Mail bestätigt wird (bereits als Standard vorhanden) und gleichzeitig einige Felder in ein csv auf dem Server gespeichert werden.
Dazu habe ich bereits einen Code ausprobiert:
...
Die Connection zur DB habe ich bewusst ausgelassen, da weiter oben bereits diese aufgebaut wird. Die ersten drei Zeilen sind die letzten Zeilen des Mail-Befehls und sind nur zum Verständnis der Positionierung aufgeführt. Die Bestellung wird mit diesem Code fehlerlos ausgeführt, jedoch wird keine Datei erzeugt. Das entsprechende Verzeichnis hat auch die benötigten Rechte. Was mache ich falsch? Auf Wunsch sende ich auch gerne die ganze PHP Datei.
Danke und liebe Grüsse
Ich entwickle einen neuen Webshop mit Opencart und stosse vor ein Problem. Ich möchte beim letzten Bestellschritt (Bestellung absenden) einen Code einbauen, so dass die Bestellung per Mail bestätigt wird (bereits als Standard vorhanden) und gleichzeitig einige Felder in ein csv auf dem Server gespeichert werden.
Dazu habe ich bereits einen Code ausprobiert:
...
PHP-Code:
$mail->setSubject(html_entity_decode($subject, ENT_QUOTES, 'UTF-8'));
$mail->setText($message);
$mail->send();
$result = $order_query;
if (!$result) die('Couldn\'t fetch records');
$num_fields = mysql_num_fields($result);
$headers = array();
for ($i = 0; $i < $num_fields; $i++) {
$headers[] = mysql_field_name($result , $i);
}
$fp = fopen('/../../../files/export.csv', 'w');
if ($fp && $result) {
header('Content-Type: text/csv');
header('Content-Disposition: attachment; filename="export.csv"');
header('Pragma: no-cache');
header('Expires: 0');
fputcsv($fp, $headers);
while ($row = $result->fetch_array(MYSQLI_NUM)) {
fputcsv($fp, array_values($row));
}
die;
}
Danke und liebe Grüsse
Kommentar