Retour session

DarkSchneider Messages postés 37 Date d'inscription mercredi 29 mai 2002 Statut Membre Dernière intervention 10 juin 2005 - 25 nov. 2003 à 00:08
Tomcube Messages postés 311 Date d'inscription vendredi 4 avril 2003 Statut Membre Dernière intervention 14 septembre 2004 - 25 nov. 2003 à 18:15
Salut tout le monde.

Cette fois, ce sont les sessions qui m'amènent ici. Voilà mon problème. Je dispose de 3 pages, disons index.php, 1.php et 2. php

Sur index.php se trouve un formulaire d'authentification banal, on saisit son login et son pass, et on clique envoyer qui envoie sur 1.php

1.php teste si le log et le pass sont correcte. Si c'est le cas, j'ouvre ma session de la façon suivante :
session_start();
session_register("log");
session_register("i");
$snam=session_name();
$sid=session_id();

Si pas le cas, envoie sur une page d'erreur

Toujours sur 1.php, un lien se trouve envoyant sur 2.php

Sur 2.php, je vérifie qu'il est loggé comme ça :
session_start();
if(!session_is_registered("log"))
{
echo "Erreur !!! Erreur !!! Erreur !!!";
}
else
{
ouverture de la page
}

Sur cette page se trouve un lien qui revient sur 1.php
Lorsque je clique sur ce lien, je suis renvoyé sur la page d'erreur qui est généré par la page 1.php dans le cas ou log et pass sont incorrecte. Pourquoi ? Pourquoi je ne reviens pas normalement sur cette page. J'ai essayé de passer deux variable avec session_register, le log et le pass dans le cas où ma page 1.php les voulait tous les deux. Or l'erreur est toujours présente.

Si quelqu'un connait un moyen de contourner ce problème. Merci et bonne prog.

1 réponse

Tomcube Messages postés 311 Date d'inscription vendredi 4 avril 2003 Statut Membre Dernière intervention 14 septembre 2004 1
25 nov. 2003 à 18:15
Dans la page 1.php, si tu ne met aucune structure de contrôle (if, else, ...) la page 1.php recherchera des infos qui viennent d'un formulaire.

Dans le action="" de ta balise <form> de index.php, met ça :

action="1.php?action=login"

Dans 1.php

<?
if (isset($_GET["action"]) && $_GET["action"]=="login")
{
// On récupère les données du formulaire et
// on crée notre session
}
else
{
// On vient sur cette page intentionnément, sans
// passer par le formulaire, donc c'est la page
// normale qui est affichée
}
?>

Si ça permet de résoudre ton problème ...
0
Rejoignez-nous