Portée de mes fonctions ?
Bonjour à tous,
Je commence par le code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| require_once ("./login.php");
//
// Récupération des informations utilisateurs
//
if ($user["informations"] = getUserInfo())
{
}
else
{
//
// Si le formulaire n'a jamais été validé, on l'affiche
//
if (!$_POST)
{
FormAuth(true);
} |
Dans login.php, nous retrouvons les fonctions liées à l'ouverture de session.. Une fois l'authentification réussi, je renvoie vers la page index.php
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
| //
// Connexion à la base de donnée..
//
$cnxdb = CnxDB($db_host, $db_login, $db_password, $db_name);
//
// Si la connexion à la DB est réaliser, une ressource est créé.
//
if (is_resource($cnxdb)){
//
// Obtention de l'id utilisateur en fonction du couple login/mot de passe
//
$user["informations"]["id"] = CheckIdent($username, $hashpassword);
if ($user["informations"]["id"])
{
dbClean();
//
// Si le couple login/mot de passe est vérifié dans la base, ouverture d'une session avec l'id de l'utilisateur
//
openSession($user["informations"]["id"]);
require_once ("./header.php");
header("Location: index.php");
}
else {
FormAuth(false);
}
}
}
else
{
FormAuth(false);
} |
J'arrive donc sur ma page et je tombe sur le formulaire. Je m'authentifie (il y a connexion à la base) et je suis redirigé sur la page index. Normalement la fonction getUserInfo() récupère mes informations sauf qu'elle ne le fait pas car elle n'arrive pas à se connecter à la base.
Cette fonction se situe dans functions_authentification.php ou le fichier functions_database.php est bien inclut.
Voici la fonction getUserInfo() :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
| function getUserInfo()
{
global $cnxdb;
if (is_resource($cnxdb))
{
$QUERY_USER_INFO = "SELECT u.id, u.username, u.password, u.email, u.groupid, u.status, u.last_modified FROM gv_sessions s INNER JOIN gv_users u ON s.sessionid = ". session_id()." AND s.userid = u.id";
$result_user_infos = mysql_query($QUERY_USER_INFO, $cnxdb);
if (is_resource($result_user_infos)){
$userinfos = mysql_fetch_array($result_user_infos);
$user["informations"] = array ("id" => "$userinfos[0]",
"username" => "$userinfos[1]",
"password" => "$userinfos[2]",
"email" => "$userinfos[3]",
"groupid" => "$userinfos[4]",
"status" => "$userinfos[5]",
"last_modified" => "$userinfos[6]",
);
return $user["informations"];
}
else {
return FALSE;
}
}
else
{
print "bof !";
}
} |
Ps : le bof c'est pour le test ;) sinon c'est FALSE.
Une petite lumière pour me guider ?