Hallo,
habe jetzt mal während dem Entwickeln alle Fehler/Notice/Deprecated-Meldungen erlaubt. Und siehe da, viele Notice-Meldungen. Unter anderem eine Meldung, die ich noch nicht oft zu Gesicht bekommen habe, nämlich Notice: Undefined offset.
Den Grund kenne ich, nur möchte das mit dem Beheben nicht so ganz hinhauen. Die Notice-Meldung wird angezeigt, wenn ein Array aufgerufen wird, dessen Index nicht existiert.
Ich habe jetzt eine Funktion, die prüft, ob ein Datum korrekt ist. Man gibt der Funktion unter anderem den Parameter $sep (das Trennzeichen). Anhand dieses Trennzeichens wird der String getrennt. Was ist, wenn dieses Trennzeichen nun nicht existiert? Es erscheint diese Fehlermeldung.
Genau das selbe mit $_POST: Möchte ich, dass nach einer fehlerhaften Benutzereingabe, die bereits beschriebenen Felder erhalten bleiben, schreibe ich normalerweise
da passiert aber beim ersten Aufruf der Fehler: Array Index existiert nicht.
Nun würde ich gerne wissen, wie man diese nervige Meldung beseitigen kann – und bitte ohne die Fehlerbenachrichtigung abzuschalten. ;)
Danke schon jetzt für eure Tipps.
EDIT: Das ist ein Teil meiner Datumsvalidierung:
habe jetzt mal während dem Entwickeln alle Fehler/Notice/Deprecated-Meldungen erlaubt. Und siehe da, viele Notice-Meldungen. Unter anderem eine Meldung, die ich noch nicht oft zu Gesicht bekommen habe, nämlich Notice: Undefined offset.
Den Grund kenne ich, nur möchte das mit dem Beheben nicht so ganz hinhauen. Die Notice-Meldung wird angezeigt, wenn ein Array aufgerufen wird, dessen Index nicht existiert.
Ich habe jetzt eine Funktion, die prüft, ob ein Datum korrekt ist. Man gibt der Funktion unter anderem den Parameter $sep (das Trennzeichen). Anhand dieses Trennzeichens wird der String getrennt. Was ist, wenn dieses Trennzeichen nun nicht existiert? Es erscheint diese Fehlermeldung.
Genau das selbe mit $_POST: Möchte ich, dass nach einer fehlerhaften Benutzereingabe, die bereits beschriebenen Felder erhalten bleiben, schreibe ich normalerweise
PHP:
<input value="<?php echo $_POST[date]; ?>" />
Nun würde ich gerne wissen, wie man diese nervige Meldung beseitigen kann – und bitte ohne die Fehlerbenachrichtigung abzuschalten. ;)
Danke schon jetzt für eure Tipps.
EDIT: Das ist ein Teil meiner Datumsvalidierung:
PHP:
$date_elements = explode($sep, $value);
checkdate($date_elements[1], $date_elements[0], $date_elements[2])