Moin!
So. Ich hab das schrittweise zerlegt, viel getestet, einiges über das von mir ungeliebte (wir hatten das Thema mal) Modul CGI gelernt ... und den Fehler hier gefunden:
$followup_num.','.$num
Und zwar hab ich eine weitere Variable definiert und den Wert erst dieser zugewiesen und dann diese an der Stelle eingesetzt:
$fastix_followup = $followup_num.','.$num;
Ergebnis: Genau diese vorher eingefügte Zeile schmeisst jetzt den Error, solange use strict (Das ist Zeile 16!) gesetzt ist und es sich um einen neues Thema handelt. Der Fehler in der veränderten Zeile ist "weg".
Könnte dies daran liegen, daß eine der Variablen nicht gesetzt ist, weil bei einem neuen Thema $followup_num nicht gesetzt wird? Dann käme die Fehlermeldung genau hin.
Ja, ich weiss, das Du $followup_num in Zeile 35 und $num in Zeile 34 als globale Variablen einführst.....
Noch ein Tip: Du kannst bei der Tabelle "zeilenweise" vorgehen. Das macht die Fehlersuche einfacher: Perl gibt dir immer die Nummer der Zeile an, in welcher ein Befehl beginnt, nicht wo der wirkliche Fehler ist. Dein Befehl ging halt über ein Dutzend Zeilen.
Die Fehlermeldung für Zeile 16 wird wohl nur zuvor ausgegeben, weil genau bei der Prüfung auf die gesetzten Variablen der Fehler auftritt. Das ist, naja, buggy (in Perl...).
Ach ja: Es ist kein Fehler, der zum Abbruch des Skriptes führt: Es funktioniert scheinbar normal (Auf Seiten des Benutzers), eher eine Warnung oder Notiz.
Im Error-log steht auch nichts von:
Execution of x:\xxxx\script.pl aborted due to compilation errors.
- was drin stehen würde, wenn Perl abbricht.
Meine Version:
G:>perl -version
This is perl, v5.8.0 built for MSWin32-x86-multi-thread
MFFG (Mit freundlich- friedfertigem Grinsen)
fastix®
Meinereinerselbst ist auf der Suche nach Aufträgen