Tester une session

Signaler
Messages postés
41
Date d'inscription
mardi 24 juin 2003
Statut
Membre
Dernière intervention
30 avril 2006
-
Messages postés
41
Date d'inscription
mardi 24 juin 2003
Statut
Membre
Dernière intervention
30 avril 2006
-
bonjour a tous,

en fait ya un truc que je comprend pas, g fait une zone admin pour un site, je rentre le mot de pass, je tombe sur la zone pour faire des modif, et je fait envoyer, la il me met que g pas le droit d'acceder a cette page (c moi qui est generer cette erreur au cas ou un mec veut aller sur cette page sans avoir mis de pass), et c pas normal. Si tout de suite apres, je re v sur la page de mot de pass, je le tape, je fait les modif et je met OK, la il me dit que tout c'est bien passer

la page du mot de pass, c un formulaire, puis ca va sur une autre page qui est aussi un formulaire, et apres ca passe a une 3e page qui applic les modif, sachant que c a la 2e que la session est lancée (pour justement ce souvenir du pass a la 3e page)

si qq'un a deja eu ce genre de pb ou si vous avez besoin de plus d'explication (si je n'ai pas été assez clair)

merci

6 réponses

Messages postés
41
Date d'inscription
mardi 24 juin 2003
Statut
Membre
Dernière intervention
30 avril 2006

a oui, autre chose, ben quand g essayer chez moi (avec easyphp d'installer), ca marchait nickel, alors que la, les fichiers sont chez un hebergeur.

en fait c que je dois faire 2 fois la meme manip pour mettre a jour, ce qui est chiant
Messages postés
2268
Date d'inscription
mercredi 27 novembre 2002
Statut
Membre
Dernière intervention
13 septembre 2013
3
Salut!
Quel hébergeur? On peut voir le code? Tu es sûr d'accepter les cookie de cet hébergeur? Tu utilise session_start() ou tu l'avais en auto?

@++

R@f

"On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"

www.progforum.net: Aide en programmation!
Messages postés
41
Date d'inscription
mardi 24 juin 2003
Statut
Membre
Dernière intervention
30 avril 2006

bon me revoila au boulot, sur le pc ou je l'avais testé avec easyphp avant de la balancer chez l'hebergeur (c un petit groupe indépendant), et ca me fait pareil : faire 2 fois la manip, donc je v faire un copier coller du code (en enlevant bien sur les trucs inutiles, trop de lignes sinon....) :

fichier admin.htm :







le fichier form_admin.php :




le fichier form_maj.php :












Attention : ne pas laisser de ligne vide au début, au milieu, et à la fin de la liste des dates










bon finalement je n'ai enlevé aucune ligne.
le fichier p.php contient le mot de pass (variable php)

si qq'un voit ce que c'est ........
Messages postés
2268
Date d'inscription
mercredi 27 novembre 2002
Statut
Membre
Dernière intervention
13 septembre 2013
3
Salut!
Essaie deja de mettre session_start(); dans tout tes fichiers, tout en haut, sans condition:

form_admin.php
<?
session_start();
include 'p.php';

if (isset($_POST['pass']) && $_POST['pass']==$p)
{

$_SESSION['pass']=$_POST['pass'];
include 'form_maj.php';

}
else
{
include 'failed.html';
}
?>


@++

R@f

"On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"

www.progforum.net: Aide en programmation!
Messages postés
41
Date d'inscription
mardi 24 juin 2003
Statut
Membre
Dernière intervention
30 avril 2006

ok je v tester, je ne l'ai pas mis dans le fichier form_maj car on include ce fichier et ca generer une erreur comme quoi la session etait deja demarrer, et je ne l'avais mis qu'apres la condition dans form_admin pour ne pas creer de session si le mec se log pas

je v voir et je tiens au courant

note : pour le fichier form_maj, pour la session, si qq'un connais une fonction pour tester si une session est lancer ????
Messages postés
41
Date d'inscription
mardi 24 juin 2003
Statut
Membre
Dernière intervention
30 avril 2006

Bon ben merci beaucoup,

le fait de passer session_start() au début à résolu mon problème

modification sur form_admin.php :
<?
session_start();
?>
<style type="text/css">
<!--
body {
background-color: #1E7FAA;
}
-->
</style>

<?

include 'me.php';

if (isset($_POST['pass']) && $_POST['pass']==$me)
{

    $_SESSION['pass']=$_POST['pass'];
    include 'form_maj.php';

}
else
{
    include 'failed.html';
    session_destroy();
}
?>


=> destruction de la session au cas ou le pass est mauvais ou si une personne charge la page sans le pass

pour les autres pass, la ligne etait au debut du php, mais sous l'html pour les styles css, j'ai donc mis le session_start() bien au debut

franchement, encore merci

++