IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Pb de session


Sujet :

Langage PHP

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 4
    Par défaut Pb de session
    Voila je suis un néophytes en php et j'ai de gros souci avec mon espace membre!! je suis dessus depuis quelques jours et je n'ai pas trouver la solution!! ( petit site)

    Mon formulaire:
    <?
    echo"<div align=\"left\"><font face=\"Verdana, Arial, Helvetica, sans-serif\" size=\"-2\" color=\"FF6600\">Pour acc&eacute;der &agrave; une rubrique,<br> vous devez vous identifier :</font> </div>";
    echo"<form method=\"post\" action=\"login.php\">";
    echo"<div align=\"left\"><font face=\"Verdana, Arial, Helvetica, sans-serif\" size=\"-2\"color=\"FF6600\">Pseudo<br>";
    echo"<input type=\"text\" name=\"pseudo\"><br><br>Mot de passe</font><br>";
    echo"<input type=\"password\" name=\"passe\"><br><br>";
    echo"<input type=\"submit\" name=\"Submit\" value=\"Entrer\" class=\"input\">";
    echo"</div>";
    echo"</form></td>";
    ?>
    Mon prog qui va vers une redirection selon le type d'utilisateur:
    <?
    session_start();
    function destination($xtype){
    switch($xtype){
    case '1':
    header("Location:admin.php");
    break;
    case '2':
    header("Location:page2.php");
    break;
    default:
    header("Location:erreur.htm");
    }
    }
    if(!isset($pseudo)){
    header("Location:erreur.htm");
    } else{
    //******************Connexion*****************************************
    include("passe.php");
    //********************************************************************
    $requete="SELECT * from membre WHERE pseudo='$pseudo' and passe='$passe'";
    $res= mysql_query($requete) or die("la requete ne peut etre executée");
    if(mysql_num_rows($res)==0){
    header("Location:erreur.htm");
    exit;
    }else{
    $ligne=mysql_fetch_array($res);
    $cp=extract($ligne);
    $sstype=$type;
    $sspseudo=$pseudo;
    $ssid_membre=$id_membre;

    $_SESSION['type'] = $type;
    $_SESSION['pseudo'] = $pseudo;
    $_SESSION['membre'] = $id_membre;


    destination($_SESSION['type']);

    // header("Location: page2.php".SID);
    }
    }
    ?>
    Et ma page2 de redirection:
    <?
    session_start();

    if (isset($_SESSION['type'])){
    if($_SESSION['type']==1 || $_SESSION['type']==2) {
    $log=true;
    }else{
    $log=false;
    }
    }else{
    $log=false;
    }
    if($log==false){
    echo "impossible d'afficher cette page, vous n'êtes pas administrateur.";
    }else{
    //***************** VARIABLE DE SESSION *******************
    if(!isset($sscompteur)){
    $_SESSION['compteur']=0;
    }
    $_SESSION['compteur']++;

    ?>
    Les variables de sessions n'arrive pas à la page2!!
    Je ne sais pas ce qui se passe!!

    Merci de m'aider
    Lhotus

  2. #2
    Expert confirmé
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Par défaut
    Salut !

    fait un (fait gaffe, ça annulera le header de ta page 1)
    et vérifie que le session_id est bien le même
    Rédacteur "éclectique" (XML, Cours PHP, Cours JavaScript, IRC, Web...)
    Les Règles du Forum - Mon Site Web sur DVP.com (Développement Web, PHP, (X)HTML/CSS, SQL, XML, IRC)
    je ne répondrai à aucune question technique via MP, MSN ou Skype : les Forums sont là pour ça !!! Merci de me demander avant de m'ajouter à vos contacts sinon je bloque !
    pensez à la balise [ code ] (bouton #) et au tag :resolu: (en bas)

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 4
    Par défaut
    Je l'ai fait et apparemment c'est le meme!!

  4. #4
    Expert confirmé
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Par défaut
    alors là je comprend pas... ajoute un exit ou un die à la suite de ton header() au cas où... mais si le SID est le même...
    Rédacteur "éclectique" (XML, Cours PHP, Cours JavaScript, IRC, Web...)
    Les Règles du Forum - Mon Site Web sur DVP.com (Développement Web, PHP, (X)HTML/CSS, SQL, XML, IRC)
    je ne répondrai à aucune question technique via MP, MSN ou Skype : les Forums sont là pour ça !!! Merci de me demander avant de m'ajouter à vos contacts sinon je bloque !
    pensez à la balise [ code ] (bouton #) et au tag :resolu: (en bas)

  5. #5
    Membre très actif
    Avatar de if_zen
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juin 2004
    Messages
    275
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2004
    Messages : 275
    Par défaut
    T'aurais pas le genre de problème "j'arrive toujours sur la page erreur.htm" ?
    Je vois dans ton 2e listing que tu testes si $login existe, mais il n'y a aucune création de cette variables dans les lignes qui précèdent (à savoir <? session_start(); ?> Ca serait pas plutot if (isset($_SESSION['login'])) ?

    Allez @+

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 4
    Par défaut
    Y'a t'il un lien avec ma verssion de php et de mysql:
    PHP Version 4.0.6


    et je dois le mettre en place sur un serveur qui reçoit du php4 et php5
    (hébergement 1and1)

    Merci,
    Aidez moi, je suis paumé!!

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 4
    Par défaut
    Après vérification, je réscupère le pseudo via $_POST["pseudo"], et je fais le test sur cette variable $_SESSION["pseudo"] ( $_POST["pseudo"]=$_SESSION["pseudo"]), qqn a t'il une solution avant que je m'arrache les cheveux?

    Merci
    Lhotus!!

  8. #8
    Membre averti
    Inscrit en
    Février 2006
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 53
    Par défaut
    bonjour,

    je dis peutetre une grosse connerie mais.... $type existe t'elle vrraiment ??
    car tu initialise ta $_SESSION['type'] a partir de $type... mais je n'ai pas vu ce qu'est $type....

    essaye un echo $_SESSION['type'] apres l'avoir initialise sur ta 1ere page... si cela ecrit quelquechose ta variable de session devrait etre valable.

Discussions similaires

  1. [Servlets - JSP] Problème de session
    Par the java lover dans le forum Servlets/JSP
    Réponses: 8
    Dernier message: 28/11/2011, 10h54
  2. [JSP][session] perte de session et sendRedirect
    Par blaz dans le forum Servlets/JSP
    Réponses: 6
    Dernier message: 30/03/2007, 10h32
  3. Réponses: 12
    Dernier message: 24/09/2003, 16h26
  4. [XMLRAD] session
    Par jml dans le forum XMLRAD
    Réponses: 4
    Dernier message: 17/12/2002, 10h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo