Aktionen
Bug #83
offen[Bugsink] ErrorException: Warning: Undefined array key "eventDateEnd"
Status:
Neu
Priorität:
wichtig
Zugewiesen an:
-
Beginn:
23.07.2026
Abgabedatum:
% erledigt:
0%
Geschätzter Aufwand:
Beschreibung
Bugsink: https://bugsink.cytrus.de/issues/issue/a51af80f-7c31-49b7-becb-59ec4c048c67/event/last/
Typ: NEW issue
Projekt: www-rietberg-de
Bugsink Alert
ErrorException: Warning: Undefined array key "eventDateEnd"
Automatisch erstellt durch n8n
KI-Analyse:
Hier ist die präzise Analyse des Fehlers als Senior TYPO3/PHP-Entwickler:
1. Ursache identifizieren¶
-
Fehler:
ErrorException: Warning: Undefined array key "eventDateEnd"- Der Fehler tritt auf, wenn versucht wird, auf den Array-Key
"eventDateEnd"zuzugreifen, der nicht existiert (z. B. in$_GET,$_POST, einem Konfigurationsarray oder einem TYPO3-Datenbankfeld). - Der Stacktrace zeigt, dass der Fehler in der
index.php(Zeile 20/21) ausgelöst wird, vermutlich in einem Closure oder einer benutzerdefinierten Logik (kein Core-Code). - Die Middleware-Kette (
MiddlewareDispatcher) ist nur der Transportweg – der eigentliche Fehler liegt nicht im TYPO3-Core, sondern in benutzerdefiniertem Code (z. B. einer Extension oder Frontend-Logik).
- Der Fehler tritt auf, wenn versucht wird, auf den Array-Key
2. Fix beschreiben (konkret)¶
Option 1: Array-Key prüfen (defensiv programmieren)¶
// Vor dem Zugriff prüfen, ob der Key existiert
$eventDateEnd = $array['eventDateEnd'] ?? null; // PHP 7.0+ (Null Coalescing Operator)
if ($eventDateEnd === null) {
// Fallback-Logik (z. B. Default-Wert setzen oder Fehler melden)
$eventDateEnd = '1970-01-01'; // Beispiel
}
Empfehlung: Nutze ?? oder isset()/array_key_exists() für sicheren Zugriff.
Option 2: TYPO3-spezifische Lösung¶
Falls der Key aus einem Extbase-Modell oder FlexForm stammt:
-
Prüfe das TCA der Extension (z. B.
Configuration/TCA/Overrides/tx_extension_domain_model_event.php):'event_date_end' => [ 'config' => [ 'type' => 'input', 'eval' => 'datetime', // oder 'date' 'default' => '0' // Default-Wert setzen ] ] -
Validierung im Controller:
if (empty($this->request->getArgument('eventDateEnd'))) { $this->addFlashMessage('Enddatum fehlt!', '', AbstractMessage::ERROR); return $this->redirect('new'); }
Option 3: Debugging-Schritte¶
-
Stacktrace analysieren:
- Der Fehler stammt aus
/public/index.php– suche dort nach dem Zugriff auf$_GET['eventDateEnd'],$_POST['eventDateEnd']oder einem Array wie$data['eventDateEnd'].
- Der Fehler stammt aus
-
Log prüfen:
- TYPO3-Logs (
var/log/typo3_*.log) oder PHP-Error-Logs für Kontext.
- TYPO3-Logs (
-
Xdebug nutzen:
- Setze einen Breakpoint in der
index.phpund prüfe den Inhalt des Arrays.
- Setze einen Breakpoint in der
3. Betroffene TYPO3 Extension¶
-
Keine Core-Extension (der Fehler liegt nicht in
/vendor/typo3/cms-core/). -
Verdächtige Kandidaten:
- Eine benutzerdefinierte Extension (z. B.
ext:events,ext:calendar). - Eine Frontend-Logik (z. B. in
typo3conf/ext/extension/Classes/Controller/EventController.php). - Ein Plugin oder Hook, das
eventDateEndverarbeitet.
- Eine benutzerdefinierte Extension (z. B.
-
Suche nach dem Key:
grep -r "eventDateEnd" typo3conf/ext/
4. Confidence¶
- 95%: Der Fehler ist klar ein undefinierter Array-Key in benutzerdefiniertem Code.
-
5% Unsicherheit: Ohne den genauen Code der
index.phpoder der Extension kann die exakte Stelle nicht 100%ig benannt werden. Der Stacktrace deutet aber stark auf eine Frontend-Logik hin.
Zusammenfassung¶
| Punkt | Details |
|---|---|
| Ursache | Undefinierter Array-Key "eventDateEnd" in benutzerdefiniertem Code. |
| Fix | Array-Key prüfen (?? oder isset()), TCA anpassen, Controller validieren. |
| Extension | Benutzerdefinierte Extension (z. B. ext:events). |
| Confidence | 95% |
Nächste Schritte:
- Suche nach
"eventDateEnd"in der Codebase. - Prüfe, ob der Key in Formularen (z. B. Fluid-Templates) oder Datenbankfeldern fehlt.
- Implementiere eine der oben genannten Fixes.
Nichts anzuzeigen
Aktionen