webForumDet fria alternativet

Inloggningscript.. skumt problem.

2 svar · 289 visningar · startad av UrMe

UrMeMedlem sedan apr. 2001797 inlägg
#1

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&ouml;tillf&auml;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");
}
Fredde MannenMedlem sedan nov. 20013 498 inlägg
#2

Finns det på någon sida så jag få testa det???

BäckmanMedlem sedan nov. 2001339 inlägg
#3

Själv så brukar jag köra med att vid själva inloggningssidan så kollar man om det finns någon post med just det användarnamn samt lösenord som man knappat in, annars så kommer man inte vidare. När jag har knappat in lösenordet så sätter jag också en liten session om man har knappat in rätt lösenord och fått gå vidare. På varje sida så kollar jag sen så att den sessionen existerar, annars så kommer ett felmeddelande.

Orkar inte dra någon kod. Det är dock så simpelt att du lär klara det själv. ;)

Genererad på 385 ms · cache AV · v20260730165559-full.f96bc7eb