Systeme de session
Posté : 23 mars 2006, 08:41
Pour les besoins de mon site web, j'ai crée un systeme de session et j'aimerais vous en faire profiter:
@+
<?php
//sessions.php
//copyright 2006 ltcf.net
// mail: [email protected]
session_start()
function create_session($pseudo)
{
$pseudo_case = $_POST['pseudo'];
$password_case = $_POST['password'];
$remember_me = $_POST['remember'];
$membre_infos = query("SELECT user_nick, user_id, user_level, user_ban, user_pass FROM ltcf_members WHERE pseudo='".$_POST['login']."'");
if($membre_infos['user_ban'] == '1')
{
header('location: msg-03.html');//utilisateur banni, accès refusé
}
elseif($membre_infos['user_ban'] == '0')
{
if(md5($password_case) == $membre_infos['user_pass'])
{
$_SESSION['logged_in'] = true;
$_SESSION['pseudo'] = htmlentities(stripslashes($membre_infos($membre_infos['user_nick']));
$_SESSION['id'] = htmlentities(stripslashes($membre_infos($membre_infos['user_id']));
$_SESSION['user_level'] = htmlentities(stripslashes($membre_infos($membre_infos['user_level']));
}
elseif(md5($password_case) != $membre_infos['user_pass'] || mysql_num_rows($membre_infos) == 0)
{
header('location: msg-02.html');//login ou mdp incorrect
}
else
{
header('location: msg-05.html');//erreur du systeme de sessions
}
}
else
{
session_destroy();
header('location: msg-05.html');//erreur du systeme de sessions
}
}
$membre_infos2 = query("SELECT user_nick, user_id, user_level, user_ban, user_pass FROM ltcf_members WHERE pseudo='".$_SESSION['pseudo']."'");
if(!isset($_SESSION[logged_in] && $_SESSION['logged_in'] == true)
{
if($membre_infos2['user_ban'] == '1')
{
session_destroy();//destruction de la session et des droits
header('location: msg-03.html');//utilisateur banni, session détruite
}
elseif($membre_infos2['user_ban'] == '0')
{
$_SESSION['logged_in'] = true;
$_SESSION['pseudo'] = htmlentities(stripslashes($membre_infos($membre_infos['user_nick']));
$_SESSION['id'] = htmlentities(stripslashes($membre_infos($membre_infos['user_id']));
$_SESSION['user_level'] = htmlentities(stripslashes($membre_infos($membre_infos['user_level']));
}
else
{
session_destroy();
header('location: msg-05.html');//erreur du systeme de templates
}
}
else
{
$_SESSION['logged_in'] = false;
}
?>
Je posterais le modele de la base SQL un peu plus tard....@+