Tror jag tagit upp detta tidigare.. för ett par månader sedan, men fick det aldrig riktigt löst.
Det ligger till så här.. jag har en fil där jag kopplar upp mig mot mysql databasen, och en fil som kollar användarnamnet.
Dessa 2 filer inkluderar jag på varje sida som är under sektionen "login".
Det fungerar bra för de flesta utan som helst problem. Men för vissa blir det så att de kommer till första sidan efter de loggat in, och därefter så kastas de ut igen när de försöker gå in på en annan sida som finns under login delen.
Detta problem verkar mest vara Internet Explorer.. de har inställt på cookie etc. För lyssna på detta :) ... för vissa gånger fungerar det och vissa inte. Förstår inte vad som är problemet?
Så det jag vill ha hjälp med är att göra detta inloggningsystem bättre.. för jag antar att det kanske inte är det bästa.. kodade detta för flera månader sedan och har använt samma kod sedan dess på flera sidor.. men med detta resultat oftast.
Databaskopplingen:
$dbcnx = @mysql_connect("localhost","user","pass");
if (!$dbcnx)
{
echo("<P>Kunde inte kontakta databasen fötillfället.</P>" );
exit();
}
if (! @mysql_select_db("databasnamn") )
{
echo(" <P>Kunde inte hitta databasen nu.</P>" );
exit();
}
Sedan har jag en annan fil som inkluderas på varje sida som kollar användarnamnet etc.
//Startar sessionerna
session_start();
session_register('username');
session_register('password');
//Kollar så att ett användarnamn och lösen skrevs in
if(IsSet($user))
$username = $user;
if(IsSet($pass))
$password = $pass;
//Väljer ut användaren
$logedin = mysql_query("SELECT * FROM fom_members WHERE username = '$username' and password = '$password'");
$num_rows = mysql_num_rows($logedin);
$row = mysql_fetch_array($logedin);
$usernow = $row["username"];
$userid = $row["idnr"];
//om inget matchar så skickas man tillbaka
if($num_rows == '0')
{
session_start();
session_destroy();
Header("Location: loggain.php?message=error");
}