A voir également:
- Astuce session_start()
- Astuce clavier iphone - Guide
- Astuce whatsapp écriture - Accueil - Messagerie instantanée
- Écrire en gras, en italique ou en barré sur WhatsApp - Guide
- Astuce springfield argent illimité ✓ - Forum jeux en ligne
- Astuce roulette casino forum ✓ - Forum Réseaux sociaux
2 réponses
Utilisateur anonyme
1 mars 2006 à 16:57
1 mars 2006 à 16:57
Hello,
Tu n'as pas bien saisi le mode de fonctionnement des sessions.
Tu n'as pas besoin de passer l'id de session en parametre.
On part en fait du principe que par exemple si $_SESSION['login'] est défini, alors une session est active et l'utilisateur est identifié.
La session reste active tant que la fenetre du navigateur est ouverte (meme si tu vas sur un autre site et que tu reviens sur le tiens, tu dois etre toujours identifié).
Maintenant, tu peux faire ça à la mode CCM, et mémoriser l'id de session dans un cookie pour rester identifier d'une fenetre de navigateur à l'autre.
Tu n'as pas bien saisi le mode de fonctionnement des sessions.
Tu n'as pas besoin de passer l'id de session en parametre.
On part en fait du principe que par exemple si $_SESSION['login'] est défini, alors une session est active et l'utilisateur est identifié.
La session reste active tant que la fenetre du navigateur est ouverte (meme si tu vas sur un autre site et que tu reviens sur le tiens, tu dois etre toujours identifié).
Maintenant, tu peux faire ça à la mode CCM, et mémoriser l'id de session dans un cookie pour rester identifier d'une fenetre de navigateur à l'autre.
Donc supposons que le client arrive sur acces.php avec le formulaire classique login/pass aprés avoir cliké sur le lien connexion qui se trouve dans index.php.
Il valide et dans forum.php je recupère $_POST['login'] etc...
Si il est dans ma base de données, je lance le bout de code suivant:
@session_start();
$id=session_id();
$_SESSION['login']=$login;
$_SESSION['ide']=$id;
affiche le forum.
Ensuite il decide de retourner à index, pi de recliker sur connexion, pour lui eviter de repasser par le formulaire, dans acces.php je met un pti bout d'algo qui doit ressembler à un truc du genre:
"si session active window.location=forum.php"
C'est cet algo qui me semble obscure.
Pout l'instant je vais faire de requête dans ma base données, quel gâchis de temps cpu, bravo la complexité!!! du O(n2) bouuuuuhhh
Il valide et dans forum.php je recupère $_POST['login'] etc...
Si il est dans ma base de données, je lance le bout de code suivant:
@session_start();
$id=session_id();
$_SESSION['login']=$login;
$_SESSION['ide']=$id;
affiche le forum.
Ensuite il decide de retourner à index, pi de recliker sur connexion, pour lui eviter de repasser par le formulaire, dans acces.php je met un pti bout d'algo qui doit ressembler à un truc du genre:
"si session active window.location=forum.php"
C'est cet algo qui me semble obscure.
Pout l'instant je vais faire de requête dans ma base données, quel gâchis de temps cpu, bravo la complexité!!! du O(n2) bouuuuuhhh
2 mars 2006 à 10:08
Donc si g bien compris, je fais session_start() sur une seule page et le tableau $_SESSION sera dispo sur toutes les autres c bien ça?
2 mars 2006 à 11:58
2 mars 2006 à 12:00
C'est le fonctionnement classique des sessions PHP. Le fait d'appeler session_start() crée un cookie ! La seule chose c'est que dans le cas de CCM j'ai préféré le nommer CCMSESSID plutôt que le traditionnel PHPSESSID ! ;-)