OVH Cloud OVH Cloud

PBM: session_register... et apres ??

2 réponses
Avatar
david
voila mon code :


//////////////////// DEBUT FICHIER login.php ///////////////////
<?
// login.php
// les variables $user et $password ont été correctement initialises au
prealable.


if (user_authenticate($user, $passwd))
{
session_start();

session_register("SESSION");
session_register("SESSION_USER");
$SESSION_USER=$user;
}

// ...

function authenticate($user, $passwd)
{
// ...
}

?>
//////////////////// FIN FICHIER login.php ///////////////////



MA QUESTION : je voudrais, a partir d'un second fichier PHP récupérer la
valeur de la variable $SESSION_USER, par exemple depuis le fichier
logged.php pour faire un :

echo "bonjour $SESSION_USER";

Mais ce code la ne marche pas chez moi. Est-ce normal ?
une alternative serait de stoquer le nom d'utilisateur dans un cookie,
mais alors, dans ce cas, a quoi sert session_register(var) si la valeur
de var part aux oubliettes ?

2 réponses

Avatar
CrazyCat
david wrote:
MA QUESTION : je voudrais, a partir d'un second fichier PHP récupérer
la valeur de la variable $SESSION_USER, par exemple depuis le fichier
logged.php pour faire un :


Commence ton fichier par un session_start();
Cela permet de faire ensuite les register(), mais aussi de les lire.
Et un petit conseil d'ami: met toujours le session_start() en premiere ligne
de ton fichier, ça t'evitera pas mal de problèmes.

--
CrazyCat from C-P-F.org

Avatar
Guillaume Bouchard
david wrote:


// les variables $user et $password ont été correctement initialises au
prealable.

if (user_authenticate($user, $passwd))


$password ou $passwd ?

session_register("SESSION");
session_register("SESSION_USER");
$SESSION_USER=$user;


Remplace tout cela par

$_SESSION['user'] = $user;

MA QUESTION : je voudrais, a partir d'un second fichier PHP récupérer la
valeur de la variable $SESSION_USER, par exemple depuis le fichier
logged.php pour faire un :


Ce sera maitenant la variable $_SESSION['user']

Mais ce code la ne marche pas chez moi. Est-ce normal ?


Surement si tu est en register_globals à off.

Comme d'habitude, lire le manuel en anglais peux servir a eviter
d'utiliser session_register qui est obsolette.

http://fr2.php.net/manual/en/function.session-start.php

--
Guillaume.