Re: [LA-discussions] gestion de session php |
[ Thread Index |
Date Index
| More linuxarverne.org/discussions Archives
]
Le lundi 22 avril 2013 18:48:05 Matthieu a écrit :
> une fois le formulaire validé et le couple 'id/pwd' est ok :
> - Tu définis le : $_SESSION['login']
> - Tu rediriges vers la bonne page (espace privé)
c'est ce que j'ai fait et je ne sais si ça peut donner une indication : si
mon code de validation est dans un fichier séparé ça marche. Si je le met en
fin de fichier (juste après la dernière ligne) sans modifier quoi que ce
soit, ça ne marche pas, ou plutôt voilà ce qui se passe :
je reviens à la page de login et les modifications de menu qui normalement
font apparaître entre autre le bouton de logout ne se font pas
si je rafraichis la page (f5) en renvoyant les paramètres (boite de dialogue
de firefox) alors là tout fonctionne.
mon code est ci-dessous, les login/pwd sont dans le ../php-include/login-
keys.php, et je charge qq autres infos que le simple pwd dont la page de
redirection qui n'est pas la mm pour tous les membres, mais comme dit plus
haut le code marche dans un fichier séparé donc je ne vois pas ce qui ne va
pas.
<?php
session_start();
include("../php-include/login-keys.php");
$defpwd = $pwdUser["default"];
if (isset($_POST['login']) && isset($_POST['pwd'])) {
// Récupération des valeurs
$login = $_POST['login'];
$password = $_POST['pwd'];
// Vérification login/password
if (array_key_exists($login, $pwdUser) && $pwdUser[$login] == $password)
{
// enregistrement du login pour la session
$_SESSION['login'] = $login;
// enregistrement de la nature du mot de passe (défaut ou perso)
if ($password == $defpwd) { $_SESSION['pass'] = "default";} else
{$_SESSION['pass'] = "perso";}
// Chargement des paramètres personnalisés
$numPage = $pageUser[$login];
$pagedef = $defPage[$numPage];
$instvalue = $instUser[$login];
$_SESSION['inst'] = $instvalue; //instruments à afficher
$_SESSION['pagedefnum'] = $numPage; //numero de page par défaut
$_SESSION['pagedef'] = $pagedef; //nom de page par défaut
//redirection
header("Location: ". $pagedef); //accès à la page
exit;
}
}
?>
--
Cordialement, Daniel Cartron
« Dieu a agi sagement en plaçant la naissance avant la mort; sans cela, que
saurait-on de la vie ? »
Alphonse Allais.
--
Liste de discussions de LinuxArverne
http://wiki.linuxarverne.org/listes_de_diffusion