By: pierce
Date: 2006-01-10
Time: 09:23
|
Problème avec une gestion de compte
Bonjours à tous,
voila mon problème, je veux faire une gestion de comptequi enverrai, si le login et le mot de passe est correcte sur une feuille acceuil, la vérification se fait à partir d'une table mysql,
j'ai utilisé ceci :
<?
session_start();// Ouverture de la session
include_once('tbs_class.php') ;
//Connexion à la base de donnée
if (!isset($_SERVER)) $_SERVER=&$HTTP_SERVER_VARS ; //PHP<4.1.0
require('connexion.php');
//Le fichier connexion.php contient les lignes suivnates :
// $cnx_id = mysql_connect('localhost','user','password') ;
// mysql_select_db('dbname',$cnx_id) ;
$TBS = new clsTinyButStrong ;
$TBS->LoadTemplate('login.htm') ;
//Je charge la feuille login.php
if (!isset($_POST)) $_POST=&$HTTP_POST_VARS ;
if (!isset($_POST['x_login']) && !isset($_POST['x_mo_de_passe']))
{
$x_login = '' ;
$x_mot_de_passe = '' ;
$msg_text = 'Après avoir saisie, cliquez sur le bouton [login].' ;
$msg_color = '#0099CC' ; //bleu
}
else
{
$x_login = $_POST['x_login'] ;
$x_mot_de_passe = $_POST['x_mot_de_passe'] ;
if ((trim($x_login)=='') and ($msg_text=='')) $msg_text = 'Vous devez saisir votre login.' ;
if ((trim($x_mot_de_passe)=='') and ($msg_text=='')) $msg_text = 'Vous devez saisir votre mot de passe.' ;
if ($msg_text=='')
{
$champs = 0;
$champs = $TBS->MergeBlock('blk1',$cnx_id,"SELECT refutilisateurs, login, profil FROM UTILISATEURS WHERE login='$x_login' AND motdepasse='$x_mot_de_passe'"); ;
if ($champs <> 0 )
{
$champs = $TBS->GetBlockSource('blk1');
$_SESSION['login'] = $x_login ;
$_SESSION['refutilisateurs'] = $x__mot_de_passe;
//$_SESSION['profil'] = $champs[2];
//setcookie ('profil', $champs[2], time()+3600, '/', 0);
//setcookie ('login', $champs[1], time()+3600, '/', 0);
//setcookie ('refutilisateurs', $champs[0], time()+3600, '/', 0);
header ("Location: http://" . $_SERVER['HTTP_HOST'] .
dirname($_SERVER['PHP_SELF']) . "/acceuil.php");
// j'ai due mettre un "/" avant acceuil il faudra peut-etre l'enlever
//echo $_SESSION['login'];
$TBS->CacheAction('session', 'TBS_CACHENOW' , $x_login , $x_mot_de_passe );
exit();
}else{
$msg_text = 'votre login ou votre mot de passe est érroné veuillez le ressaisir svp';
$msg_color = '#990000' ; //rouge
}
} else {
$msg_color = '#990000' ; //rouge
}
}
$TBS->Show() ;
mysql_close($cnx_id) ;
?>
|
le cpoint précis est :
if ($msg_text=='')
{
$champs = 0;
$champs = $TBS->MergeBlock('blk1',$cnx_id,"SELECT refutilisateurs, login, profil FROM UTILISATEURS WHERE login='$x_login' AND motdepasse='$x_mot_de_passe'"); ;
if ($champs <> 0 )
{
$champs = $TBS->GetBlockSource('blk1');
$_SESSION['login'] = $x_login ;
$_SESSION['refutilisateurs'] = $x__mot_de_passe;
//$_SESSION['profil'] = $champs[2];
//setcookie ('profil', $champs[2], time()+3600, '/', 0);
//setcookie ('login', $champs[1], time()+3600, '/', 0);
//setcookie ('refutilisateurs', $champs[0], time()+3600, '/', 0);
header ("Location: http://" . $_SERVER['HTTP_HOST'] .
dirname($_SERVER['PHP_SELF']) . "/acceuil.php");
|
Vous pouvez remarquez que j'ai toujours un souci au niveau de ma session ou de l'utilisation du fichier cache
merci par avance pour votre aide
|
By: pierce
Date: 2006-01-10
Time: 14:19
|
Re: Problème avec une gestion de compte
c'était pour savoir comment enregistrer dans des session le profil, mais c'est bon c'est arrangé, merci tout de même
|