Hi,
die Funktion login() gibt einen boolschen Wert zurück, ob der Login gelungen ist. Dieser soll auf die Variable $display geschrieben werden, allerdings die Verneinung des boolschen Wertes. Andererseits wird mit dem if der Gesamtausdruck getestet, der sich auf das Ergebnis von login() beziehen soll.
kein Problem. ;-)
Da war doch mal was mit der doppelten Verneinung ...
if(!$display = login($user))
im Fehlerfall von login, wird $display zwar true, allerdings wird der ganze if() Ausdruck auch true. Der sollte aber false bleiben.
Wie kriege ich das hin?
Doppelt negieren und richtig klammern:
if ( !($display = !login()) )
So wird der einmal negierte Wert zugewiesen, aber der zweimal negierte Wert als if-Ausdruck ausgewertet.
So long,
Martin
--
Wenn Zeit das Kostbarste ist, was wir haben, dann ist Zeitverschwendung die größte aller Verschwendungen.
(Benjamin Franklin, amerikanischer Tüftler und Politiker)
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
Wenn Zeit das Kostbarste ist, was wir haben, dann ist Zeitverschwendung die größte aller Verschwendungen.
(Benjamin Franklin, amerikanischer Tüftler und Politiker)
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(