Timeout problem mit script

Hi zusammen,

ich habe vor kurzem was programmiert für einen Kunden und im Template eingefügt. Nun macht es aber ganz plötzlich probleme mit Invoiceplane, sobald man die PDF einer neuen Rechnung erstellen will. Alle anderen Rechnungen, welche die selbe View verwenden, (selbes Template) werden ohne probleme generiert. Auch die Logs spucken hier keine nützlichen Infos aus…

Hier der Code:

    if ($invoice->invoice_status_id == 3) {// prüfe ob status viewd ist (passt)
    $eTlMv = date_create($invoice->invoice_date_created);
        date_modify($eTlMv, 'first day of last month');
        setlocale(LC_ALL, 'de_DE');
        $local_date = date('l, d.m.Y', $eTlMv->getTimestamp());
        $de_date = strftime('%B', strtotime($local_date));
        echo $de_date;
} else { // Status ist nicht viewed
    $eTlM = date_create($invoice->invoice_date_created);
    date_modify($eTlM, 'first day of this month');
    setlocale(LC_ALL, 'de_DE');
    $local_date = date('l, d.m.Y', $eTlM->getTimestamp());
    $de_date = strftime('%B', strtotime($local_date));
    echo $de_date;

Hoffe dass mir da jemand Licht ins Dunkeln bringen kann.

Gruß

Hi :slight_smile:
Kannst du uns zeigen wie der Fehler sich bemerkbar macht? Gibt es im Frontend ein Log oder eine Fehlermeldung?

Falls nein bitte einmal den “Enable Debug Mode” aktivieren:
https://wiki.invoiceplane.org/en/1.5/settings/general#system

Denn ohne Log ist es ein stochern im Dunkeln.
Grüße

Hi :slight_smile:

Vielen Dank für die schnelle Rückmeldung aber die Debug Einstellung kann ich leider in meinem System nicht finden oder soll ich das einfach via Index.php einstellen ?

Gruß John

In die index.php kommt garnichts, die bleibt bitte unverändert!
Allerdings darfst du gerne die ipconfig.php editieren und dort, folgende Configuration:


Auf true setzen um das Debugging zu aktivieren.

Okay ist aktiviert. Soll ich den kompletten Log posten ? Ist schon ziemlich viel…

Gruß

Bitte Log leeren/löschen, dann gezielt die Funktion triggern die den Fehler wirft und danach (nach dem Tomeout/Fehler) direkt den log rauskopieren. Bitte allerdings nicht hier als Text, sondern bei PasteBin oder ähnlichem posten und hier nur den Link zu dem PasteBin linken :slight_smile:

Sensible Informationen dürfen natürlich zensiert werden, bitte allerdings keine Fehlercodes entfernen/editieren etc

Habe ich :slight_smile:

Danke im Voraus !

Was mit sofort ins Auge springt ist dieser Error:

ERROR - 2021-04-04 21:27:39 --> Could not find the language line "subtot al"

Wobei “subtotal” wohl zusammen geschrieben sein sollte, weshalb das Programm diese String nicht findet. Das könnte auch schon die Fehlerquelle sein. In welcher Datei du diesen Fehler hast musst du selbst rausfinden, sollte aber mittels der Suchfunktion einfach sein, oder eben per grep auch rekursiv über einen ganzen Ordner gesucht werden können.

Hoffe das hilft.

Ah okay, wobei ich das eher seltsam finde, da ich faktisch nie etwas in dieser Datei geändert habe. Aber ich leere den später noch mal und versuche den Fehler zu reproduzieren.

Vielen Dank erstmal :slight_smile:

Es muss nicht in der LanguageDatei sein (wird es wohl auch nicht), es kann auch sein dass du in deinem Template statt:

<?php echo trans('subtotal'); ?>

ein Leerzeichen eingefugt hast und nun:

<?php echo trans('subtot al'); ?>

drin steht, was natürlich dann nicht übersetzt werden kann.

Habe jetzt nur die template-tags.php gefunden in welcher “subtot al” drin war:

image

Dann einmal korrigieren und alles weitere beobachten. Das wird ziemlich sicher eine Fehlerquelle gewesen sein.

Beobachte die Situation und melde dich zurück.

Guten Morgen,

leider nach wie vor das selbe Problem. Log:

Ich glaube eher, dass mein Script da ein Problem hat. Momentan ist das vermutlich bei Nicht gelesen (not viewed) der Fall sowie ich das beobachten kann.

Ich kann im Log nach wie vor nichts von Timeout erkennen, das Event ist also nicht im Log drin.
Gib doch mal bitte folgende Infos durch:

  1. Wie hostest du? (WebhostPaket, VPS, Dedicated Server)
  2. welche PHP version? (7.0, 7.1, 7.2, 7.3, 7.4)
  3. PHP Einstellungen? (max_execution_time, etc etc)

Hey :slight_smile:

Das Thema kann geschlossen werden, es hat sich erledigt. Es hing seltsamerweise mit meinem “setlocale(LC_ALL, ‘de_DE’);” in der Bedingung zusammen. Warum auch immer. Habe es nun anders gelöst.

Danke trotzdem für die schnelle Hilfe!
Gruß