begin process at 2012 05 31 07:39:25
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive PHP

 > 

Archives

 > 

AU SECOURS !!!

 > 

problemes de séssion


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

problemes de séssion

samedi 19 novembre 2005 à 18:44:11 | problemes de séssion

pekplusultra

helo,
toujours plus haut toujours plus fort,
jai crée un petit site en local qui fonctionne nikel mais sur le net apparait un gros bug.
je mexplique: je midentifie en tant qu'utilisateur et lorsque je clique sur un lien pour visiter une fiche d'une autre personne la session change automatiquement.
C'est a dire que je suis connecté avec le pseudo de l'autre personne et qui de mieux je peux changer la moitié de ces informations.

j'utilise easyphp version 1.8.01 et la version de php de mon serveur et la 5.0.4

Vous avez une ptite idée please?

samedi 19 novembre 2005 à 22:09:31 | Re : problemes de séssion

Anthomicro

Salut,

quel est ton code ?

    dimanche 20 novembre 2005 à 11:39:22 | Re : problemes de séssion

    pekplusultra

    Code de la page index:

    <?php require_once('connexion.php'); ?>
    <?php


    session_start();

    if (isset($_POST['login'])){
        $login = addslashes($_POST['login']);
        $pass = addslashes(md5($_POST['pass']));
       
    mysql_select_db($database_dbprotect, $dbprotect);
    $verif_query=sprintf("SELECT * FROM utilisateurs WHERE login='$login' AND pass='$pass'");
    $verif = mysql_query($verif_query, $dbprotect) or die(mysql_error());
    $row_verif = mysql_fetch_assoc($verif);
    $utilisateur = mysql_num_rows($verif);

       
        if ($utilisateur) {    // On test s'il y a un utilisateur correspondant
       
            session_register("authentification"); // enregistrement de la session
           
            // déclaration des variables de session
            $_SESSION['privilege'] = $row_verif['privilege']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
            $_SESSION['nom'] = $row_verif['nom']; // Son nom
            $_SESSION['prenom'] = $row_verif['prenom']; // Son Prénom
            $_SESSION['login'] = $row_verif['login']; // Son Login
            $_SESSION['pass'] = $row_verif['pass']; // Son mot de passe (à éviter)
           
            header("Location:accueil.php"); // redirection si OK
        }
        else {
            header("Location:index.php?erreur=login"); // redirection si utilisateur non reconnu
        }
    }


    // Gestion de la  déconnexion
    if(isset($_GET['erreur']) && $_GET['erreur'] == 'logout'){ // Test sur les paramètres d'URL qui permettront d'identifier un contexte de déconnexion
        $prenom = $_SESSION['prenom']; // On garde le prénom en variable pour dire au revoir (soyons polis :-)
        session_unset("authentification");
        header("Location:index.php?erreur=delog&prenom=$prenom");
    }
    ?>



    Code de la page accueil

    <?php require_once('connexion.php');
    session_start();
    if (session_is_registered("authentification")){$login = $_SESSION['login']; }
    else {
    header("Location:index.php?erreur=intru");
    }

    $login = $_SESSION['login'];
    mysql_select_db($database_dbprotect, $dbprotect);
    $query_users = "SELECT login, prenom, age, sexe FROM utilisateurs ORDER BY id_user DESC";
    $users = mysql_query($query_users, $dbprotect) or die(mysql_error());
    $row_users = mysql_fetch_assoc($users);
    $cpt = 5;
    ?>


    appel de la page visualisation ::
     <a href="visualisation.php?login=<?php echo $login;?>" class="bleuxs">

    Code de la page visualisation:

    <?php
    session_start();
    if (session_is_registered("authentification")){
    }
    else {
    header("Location:index.php?erreur=intru");
    }

    require_once('connexion.php');
    $login = $_GET['login'];
    mysql_select_db($database_dbprotect,$dbprotect);
    $requete = ("SELECT etat, personnalite, taille, poid, aime, aimepas, prenom, ville, celibataire, age, admsn, cacher FROM utilisateurs WHERE login='$login'");
    $query = mysql_query($requete,$dbprotect)  or die (mysql_error());
    $tab = mysql_fetch_array($query);
    $etat = $tab[0];
    $personnalite = $tab[1];
    $taille = $tab[2];
    $poid = $tab[3];
    $aime = $tab[4];
    $aimepas = $tab[5];
    $prenom = $tab[6];
    $ville = $tab[7];
    $celibataire = $tab[8];
    $age = $tab[9];
    $admsn = $tab[10];
    $cacher = $tab[11];
    ?>

    Mais je pense pas que ca vienne de mon code, vue qu'en local ca fonctionne tres bien.
    dimanche 20 novembre 2005 à 11:53:00 | Re : problemes de séssion

    Anthomicro

    j'ai la flemme de regarder tout le code, session_is_registered est dépréciée tu dois utiliser if(isset($_SESSION['variable']))


      dimanche 20 novembre 2005 à 15:36:49 | Re : problemes de séssion

      pekplusultra

      ok je vais essayer avec ca, merci
      dimanche 20 novembre 2005 à 17:41:19 | Re : problemes de séssion

      FhX

      "$utilisateur = mysql_num_rows($verif);

         
          if ($utilisateur) {    // On test s'il y a un utilisateur correspondant"

      mysql_num_rows() n'a jamais renvoyée TRUE !!!!!!!!!
      Faut pas s'étonner si ca marche une fois sur 30 :/

      Y'a bien marqué : int mysql_num_rows() dans la doc PHP !!!

      Ca renvoit false si y'a rien oui, mais jamais true !
      En plus, tu récupères tes enregistrements, mais si jamais je demande le login de quelqu'un qui n'existe pas, tu va avoir une erreur de notice avec mysql_fetch_assoc() !

      Par contre, autrement je vois pas d'erreur énorme :o

      lundi 21 novembre 2005 à 08:54:39 | Re : problemes de séssion

      malalam

      Administrateur CodeS-SourceS
      Réponse acceptée !
      Hello,

      je n'ai jamais testé, mais si tu es dans un environnement où register_globals est à on, le comportement est peut-être le même que pour $_POST ou $_GET...à savoir que si
      $_GET['login'] sera différent de $_SESSION['login'], $login tout court pourra être utilisé en lieu et place de ces 2 variables. Et comme au lieu d'utiliser directement tes globales, tu passes par une affecation à $login...ton problème vient peut-être de là.
      Utilise directement $_GET et pas $login dans ta page de visu (et partout, éventuellement, n'affectes pas tes variables globales à une tierce variable).
      Sauf que normalement, session_register ne devrait pas fonctionner dans cet environnement là.

      Heu ensuite, session_register('authentication'); je veux bien, mais tu ne stockes rien là, $authentication n'existe apparemment pas.

      Bref de toutes façons, comme Antho, je préconise l'utilisation de $_SESSION.
      lundi 21 novembre 2005 à 09:55:57 | Re : problemes de séssion

      pekplusultra

      ok je vais tester vos conseils s'apré-midi. je vous tiens au courant encore merci
      lundi 21 novembre 2005 à 12:21:35 | Re : problemes de séssion

      pekplusultra

      bon je viens de faire les modif de session, mais cela ne change rien.
      me reste plus qu'a voir si register_globals est en position 'on'.
      lundi 21 novembre 2005 à 13:29:44 | Re : problemes de séssion

      pekplusultra

      Voilà le problemes est résolut, c'etait bien a cause du registers_global qui etait a 'on', pour ne pas changer touts mes fichiers , jai juste donner un autre nom a $login=$_GET['login']. j'ai remplacer $login par $login1. Et tout fonctionne pour le mieux.

      Un grand merci à vous d'avoir répondu et corriger mes erreurs.


      Cette discussion est classée dans : version, toujours, problemes, séssion


      Répondre à ce message

      Sujets en rapport avec ce message

      PWS version PHP ! [ par Clem ] J'ai trouvé un PWS en mieux, et pour le PHP !Sur http://www.easyphp.org/, il suffit de télécharger la dernière version (8Mo) et de l'installer.L'avant problemes phpmyadmin........... [ par elanspeech ] J'ai fort apprecié ton aide sur php.net cependant, je ne suis pas parvenu a realiser ce que je veux.Je n'ai pas trouve comment modifier le cadre droit 2 petits problemes de formulaire [ par doxid ] voila mon codeinclude('connectbase.php');$cartelist = mysql_query('SELECT carte FROM essaie WHERE site = 1;') or die('Erreur');while ($carte = mysql_f Encore et toujours les conversions [ par DarkSchneider ] Salut tout le monde.Ce qui m'amène en ces lieux est un problème de conversions mais avec les nombres à virgules, sale bête que ceux là. Je désire conv Problemes conditions [ par zzzzzz ] Salut j'ai un prob de condition en fait j'aimerai tester si le mec est identifier alors ca marque dans le menu a gauche VOUS ETES IDENTIFIER sinon ca détecter word et version windows [ par 3Rescator ] Comment détecter si Word, Excel et powerpoint sont installés sur l'ordi du client ?Et aussi, comment détecter si le client utilise Windows XP ?Je sais Problemes de cookies [ par Trigun222 ] salut,apres déconnection et redemarrage du pc le cookie que j'envoie de cette façonsetcookie("test",'ma maleur',time()+(3600*24*365*100) );?>n'est plu Problemes BBCode [ par TiotBour ] Bonjour,J'ai un probleme avec un script pour un forum avec du bbcode.Voici mon script :$message = preg_replace("/\[color=(.+?)\](.+?)\[\/color\]/", "& problemes de destruction de session... [ par jojomillenium ] Salut!J'ai un probleme simple mais qui me pose probleme...Voila, j'ai un acces securisé par session. Lorsque la personne se logue grace a son mot de p problemes de lien dans un calendrier [ par hysteria74000 ] qulequ'un peut me dire pourquoi mes liens, dans mon calendrier, SUIVANT et PRECEDENT ne fonctionnent pas.Voici le code php::$lien=date("Y+m+d", mktime


      Nos sponsors


      Sondage...

      CalendriCode

      Mai 2012
      LMMJVSD
       123456
      78910111213
      14151617181920
      21222324252627
      28293031   

      Consulter la suite du CalendriCode

      Photothèque

      A découvrir



       
      Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
      CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
      CodeS-SourceS.com© est une marque déposée tous droits réservés

      Google Coop CodeS-SourceS Google Coop CodeS-SourceS
      Temps d'éxécution de la page : 1,466 sec (3)

      Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales