<if (isset($_SESSION['username'] )) {
echo "je bent ingelogd als ".$_SESSION['username'];
} else {
echo "je bent NIET ingelogd als ";
echo $_SESSION['username'];;
}
maar krijg nog steeds: je bent NIET ingelogd als
Notice: Undefined index: username in bp.php on line 10
Na aanpassing naar hoofdletters, komt nu melde undefined index
Sowieso kun je in je else-block geen gebruik maken van $_SESSION['username'], omdat je 100% zeker weet dat die niet zal bestaan. Dat heb je immers in je if-conditie al getest.
Sowieso kun je in je else-block geen gebruik maken van $_SESSION['username'], omdat je 100% zeker weet dat die niet zal bestaan. Dat heb je immers in je if-conditie al getest.
Niet helemaal waar, $_SESSION['username'] (de key "username" in het superglobale $_SESSION array) kan best bestaan, maar isset levert toch false op ingeval de waarde hiervan gelijk is aan NULL (misschien is !empty() dan een betere check?). Ik ben het met je eens dat het gebruik van $_SESSION['username'] in het else-statement niet erg zinnig is.
Thomas je gooit isset en empty door elkaar volgens mij? Iig kijkt isset gewoon of een variabele of element in een array geinitialiseerd is. Empty of is_empty wat is het eigenlijk? Die gebruik ik zelf nooit omdat deze functie voor verwarring kan zorgen.
@Frank: https://secure.php.net/manual/en/function.isset.php voorbeeld 1,5 (tussen #1 en #2 in - specifiek over arrays, zie 'hello'). Als je wilt weten of een key bestaat (ook als de waarde null is) moet je array_key_exists() gebruiken.