Jakob Schneider: sicherer Login und Sessions in PHP

Beitrag lesen

Moin,

Mit Session als Loginmöglichkeit liegst du, denke ich, garnicht so verkehrt :-)

In meinem Board, in das sich registrierte USer einloggen können, habe ich folgende Funktionen verwendet:

function dologin($username,$pass)
{
include('inc.php');
$selectuser="SELECT * FROM board_user WHERE username LIKE '".$username."' AND pass LIKE '".$pass."' AND acces LIKE 'yes'";
$doselectuser=mysql_query($selectuser,$dbconn);

$row=mysql_fetch_array($doselectuser);

if($row)
{
return true;
}
else
{
return false;
}
}

(gibt true zurück, falls Benutzerdaten stimmen)

session_register('login'); //Login-Session wird registriert
session_register(username); //Username wird als Session registriert

//folgende Funktion gibt Userdaten zurück

function getuserinfo($username)
{
include('inc.php');
$getuserinfo="SELECT * FROM board_user WHERE username LIKE '".$username."'";
$dogetuserinfo=mysql_query($getuserinfo,$dbconn);

if($userinfo=mysql_fetch_array($dogetuserinfo))
{
return $userinfo;
}
}

$userinfo=getuserinfo($username);
session_register(userinfo);

So hättest du alle Userdaten in einer Variable, auf die du in allen Seiten zugreifen kannst
(den USername hättest du sogar zweimal zur Verfügung ($username & $userinfo['username'])

Ich hoffe ich konnte dir behilflich sein :-)

ach ja: In der Logout-Seite brauchst du nur folgendes einzubinden:

session_destroy();
session_unregister('login');
session_unregister($username);
session_unregister($userinfo);

Somit wäre der User perfekt ausgellogt

LG Jakob

--
Wer andern eine Bratwurst brät, hat meist ein Bratwurstbratgerät!