Tom: Variable auf einen festen Wert prüfen

Beitrag lesen

Hello Martin,

auch Dir viele bunte Ostereier ;-)

Ich ahne und befürchte, dass Du mit "register_globals = on" arbeitest. Google mal nach diesem Begriff oder suche hier im Archiv danach. Du solltest diese Einstellung nicht mehr benutzen. Ich habe deshalb gleich $_POST['uhr'] benutzt.

Guter Hinweis - auch wenn das aus dem Codeschnipsel des OP nicht direkt hervorgeht.

Im Prinzip geht das schon daraus hervor:

Wenn schon jemand "isset()" benutzt, tut er dies in der Datenübernahme-Section. Später hat es keinen Sinn mehr. Und wenn nun jemand in der Datenübernahme-Section auf eine einfache Variable zugreift, dann muss die ja irgendwoher gekommen sein, also zu 99% direkt aus dem Request.

Wenn man stattdessen diese typischen nutzlosen Konstrukte

$uhr = $_POST['uhr'];

benutzt, dann ist die Notice[1] ja schon bei dieser Zuweisung fällig, wenn $_POST['uhr'] nicht vorhanden ist.

Für die übrigen Möglichkeiten, wie $uhr entstehen könnte, ohne dass im Fehlfall eine Notice fällt, sollten die 1% Restwahrscheinlichkeit im Vorkommen von "normalen" Scripten ausreichen.

[1] und wenn die Notices ausgeschaltet sind, würde die obige nutzlose Umkopieraktion tritzdem noch ein $uhr erzeugen, auch wenn $_POST['uhr'] nicht vorhanden ist - dann natürlich mit dem Wert false.

Das macht dann aber isset() unbrauchbar an dieser Stelle.

Liebe Grüße aus dem Cyberspace

Tom vom Berg

--
Nur selber lernen macht schlau
http://bergpost.annerschbarrich.de