Ergebnis 1 bis 4 von 4

Thema: PHP Warung bei Ausgabe der Rechnung als PDF

  1. #1
    Contao-Nutzer
    Registriert seit
    26.03.2012.
    Beiträge
    115

    Standard PHP Warung bei Ausgabe der Rechnung als PDF

    Hallo Zusammen,

    ich habe beim Arbeiten an meiner Isotope-Rechnungsvorlage aufgrund einiger Problemchen bemerkt, dass bei jedem Erzeugen eines PDF ausgehend von einer vorhandenen Bestellungfolgende doppelte Warungen in der error.log einstehen:

    Code:
    [17-Sep-2015 22:25:23 Europe/Berlin] 
    PHP Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\mlg.de\vendor\tecnick.com\tcpdf\include\tcpdf_static.php:858) in C:\xampp\htdocs\mlg.de\system\modules\core\library\Contao\Template.php on line 294
    #0 [internal function]: __error(2, 'Cannot modify h...', 'C:\\xampp\\htdocs...', 294, Array)
    #1 C:\xampp\htdocs\mlg.de\system\modules\core\library\Contao\Template.php(294): header('Vary: User-Agen...', false)
    #2 C:\xampp\htdocs\mlg.de\system\modules\core\classes\BackendTemplate.php(120): Contao\Template->output()
    #3 C:\xampp\htdocs\mlg.de\system\modules\core\controllers\BackendMain.php(275): Contao\BackendTemplate->output()
    #4 C:\xampp\htdocs\mlg.de\system\modules\core\controllers\BackendMain.php(135): Contao\BackendMain->output()
    #5 C:\xampp\htdocs\mlg.de\contao\main.php(20): Contao\BackendMain->run()
    #6 {main}
    
    
    [17-Sep-2015 22:25:23 Europe/Berlin] 
    PHP Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\mlg.de\vendor\tecnick.com\tcpdf\include\tcpdf_static.php:858) in C:\xampp\htdocs\mlg.de\system\modules\core\library\Contao\Template.php on line 295
    #0 [internal function]: __error(2, 'Cannot modify h...', 'C:\\xampp\\htdocs...', 295, Array)
    #1 C:\xampp\htdocs\mlg.de\system\modules\core\library\Contao\Template.php(295): header('Content-Type: t...')
    #2 C:\xampp\htdocs\mlg.de\system\modules\core\classes\BackendTemplate.php(120): Contao\Template->output()
    #3 C:\xampp\htdocs\mlg.de\system\modules\core\controllers\BackendMain.php(275): Contao\BackendTemplate->output()
    #4 C:\xampp\htdocs\mlg.de\system\modules\core\controllers\BackendMain.php(135): Contao\BackendMain->output()
    #5 C:\xampp\htdocs\mlg.de\contao\main.php(20): Contao\BackendMain->run()
    #6 {main}
    Ich dachte erst an meine Einstellungen in der langconfig.php und der dcaconfig.php oder einen Fehler im iso_document-Template. Ich habe die configs auskommentiert und das Dokumententemplate komplett leer gemacht. Es wird ein leeres PDF erzeugt und weiterhin diese Warnung geloggt.

    Kann jemand sagen, wo das her kommen könnte und ob es weitere Probleme machen könnte?

    Eingesetzt werden: Contao 3.5.3 und Isotope 2.3.1 in einer aktuellen XAMPP-Umgebung.

    VG
    Chris
    ______________________________________

    www.mit-liebe-gebacken.de

  2. #2
    Gesperrt
    Registriert seit
    07.05.2011.
    Beiträge
    1.199

    Standard

    Diese Fehlermeldung erscheint, wenn irgendwo eine HTML-Ausgabe generiert wird, wo sie nicht hingehört. Also bevor der body gerendert wird. Würde beispielsweise passieren, wenn bereits im Modul eine HTML-Ausgabe erfolgen täte, statt erst im Template. Dies wird natürlich nicht der Fall sein, nur zur Erklärung der grundlegenden Fehlerursache.

    http://php.net/manual/de/function.ob-flush.php

  3. #3
    Contao-Nutzer
    Registriert seit
    26.03.2012.
    Beiträge
    115

    Standard

    Hallo soweit_ok,
    vielen Dank für deine Unterstützung! Ich habe mir das mal angesehen und abgebrochen ... Das Thema vernünftig zu analysieren, wird für mich als php-Noob und Trail-And-Error-Template-Zusammenschnibbler eine Odysee.

    @all: Haben andere bei der Ausgabe des Rechnungs-PDF für eine Isotope-Bestellung auch solche Warnungen im error.log?
    Wenn ja, dann würde ich ein Ticket in github erstellen.

    VG
    Chris
    ______________________________________

    www.mit-liebe-gebacken.de

  4. #4
    Gesperrt
    Registriert seit
    07.05.2011.
    Beiträge
    1.199

    Standard

    Zu demselben Fehler gab´s schonmal ein Ticket, allerdings etwas suboptimal geschlossen, wohl weil der Ersteller im Ton pampig wurde. Immerhin steht da "Leere Rechnung lag an einem htmlentities() Aufruf. Warning bleiben aber.".

    https://github.com/isotope/core/issues/1224

    Hm, mal nicht gleich aufgeben. Und ein weiteres Ticket dürfte vermutlich nichts bringen, weil der Fehler höchstwahrscheinlich nicht auf einen Bug zurückgeht. Guck doch mal nach, ob Du irgendwo vllt. ein Leerzeichen hinter dem Ende einer PHP-Zeile hast. Ggf. löschen. Hast Du vielleicht ein Bild, z. B. Logo in Deinem Rechnungsformular? Falls ja, nimm es zur Probe mal raus. Die Fehlermeldung kommt eindeutig von einer ungültigen HTML-Ausgabe bzw. vor der PDF-Generierung. Die gilt es zu finden, denn deshalb kann das PDF nicht gesendet werden und die Rechnung bleibt leer und daher auch die Warnungen.
    Geändert von soweit_ok (21.09.2015 um 21:06 Uhr)

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •