if (empty($inputUser) or empty($inputPass)) { echo "indtast brugernavn og password"; } else { openConnection();
$res = mysql_query("select user, pass from users where user = '$inputUser' and pass = password('$inputPass')") or die(mysql_error()); closeConnection();
Problemet er som sagt at jeg skal logge ind to gange før det virker. Når jeg logger ind første gang, bliver jeg godt nok sendt tilbage til den første side igen, men det er som om $_SESSION['loginStatus'] ikke bliver registreret i før jeg igen indtaster korrekte brugeroplysninger. Jeg har trevlet nettet tyndt for at finde en forklaring, men det er altså ikke lykkedes. Håber i kan hjælpe.
if ($row = mysql_fetch_array($res)) { $_SESSION['loginStatus'] = true; header("Location:".$url."menu.php?".SID); }
til:
if ($row = mysql_fetch_array($res)) { $_SESSION['loginStatus'] = true; echo "<h1>Du er logget ind</h1><a href='$url'>Klik her for at vende tilbage</a>."; exit; }
Hej. Det har noget med browserens cache at gøre. Jeg har selv oplevet det mange gange, og har fundet en løsning jer altid bruger. (Der er også andre løsninger som at deaktivere cache på den gældende side, men jeg holder mig til den her).
Hvis login er godkendt, så send til en side der hedder redirect.php. Indholdet af redirect.php kan se ud som følger:
Og det er ikke fordi at den kode der checker username/pass ligger "i bunden" i siden, så den først afvikles efter du har genereret indhold til brugeren?
(Det har nok noget at gøre med at dine session cookies ikke bliver sat ordentligt, da du bruger header til at skifte sider - Underligt, det ved jeg, men det kan være det er det)
CoderDK og Dulius (Julius): tak for hurtige svar. Det var åbentbart et eller andet problem med (header location). Underligt... Jeg har accepteret svaret fra dulius, er det ikke muligt også at acceptere CoderDK's svar... I gamle dage kunne man vist dele pointene mellem flere svar. (Det er MEGET lang tid siden jeg sidst har anvendt eksperten).
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.