Précédent   Forum des professionnels en informatique > PHP > Langage > Sessions
Sessions Forum d'entraide sur les sessions avec PHP. Avant de poster -> FAQ sessions, Cours sessions et Sources sécurité
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 10/05/2006, 19h41   #1
Invité de passage
 
Inscription : mai 2005
Messages : 14
Détails du profil
Informations forums :
Inscription : mai 2005
Messages : 14
Points : 1
Points : 1
Par défaut Problème avec les sessions

salut tt le monde
voila mon pb j'ai utlisé une session pour sauvgarder les données d'une formulaire donc aprés la vérification de username et password dont voila le code:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
if (isset($_POST['username']) && isset($_POST['password'])) {
        // on vérifie les informations du formulaire, à savoir si le pseudo saisi est bien un pseudo autorisé, de même pour le mot de passe
        if (validate($_POST['username'],md5($_POST['password']))) {
                // dans ce cas, tout est ok, on peut démarrer notre session
                // on la démarre :)
                session_start ();
                // on enregistre les paramètres de notre visiteur comme variables de session ($login et $pwd) (notez bien que l'on utilise pas le $ pour enregistrer ces variables)
                $_SESSION['user'] = $_POST['username'];
                $_SESSION['password'] = $_POST['password'];
                // on redirige notre visiteur vers une page de notre section membre
                header ('location: welcome.php');
        } else {
               $msg='Password incorrect';
                   }
}
ce code existe dans une page default.php
l'autre page ou les informations sont envoyées est appelé welcome.php et contient :
Code :
1
2
3
4
5
6
7
8
<?php 
  session_start();
  if(isset($_SESSION['user'])){
    echo $_SESSION['user'];
  }else{
   echo 'error';
  }
 ?>
et voila ce qui m'affiche
Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at c:\program files\easyphp1-8\www\ebiznas\welcome.php:1) in c:\program files\easyphp1-8\www\ebiznas\welcome.php on line 2
.body { SCROLLBAR-FACE-COLOR: #3979bd; SCROLLBAR-HIGHLIGHT-COLOR: #cccc99; SCROLLBAR-SHADOW-COLOR: #666633; SCROLLBAR-3DLIGHT-COLOR: navy; SCROLLBAR-ARROW-COLOR: navy; SCROLLBAR-TRACK-COLOR: #e7e7e7; SCROLLBAR-DARKSHADOW-COLOR: #666633; SCROLLBAR-BASE-COLOR: #e7e7e7 } localhost sachant que le username est localhost
je sais pas ou est le pb j' ai consulté bcp des tutos mes le pb reste le meme
horri est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/05/2006, 19h47   #2
Membre émérite
 
Inscription : juillet 2005
Messages : 775
Détails du profil
Informations personnelles :
Âge : 29

Informations forums :
Inscription : juillet 2005
Messages : 775
Points : 858
Points : 858
Envoyer un message via AIM à ouatmad Envoyer un message via MSN à ouatmad Envoyer un message via Yahoo à ouatmad
Code :
1
2
3
4
5
6
7
8
<?php 
  session_start();
  if(isset($_SESSION['user'])){
    echo $_SESSION['user'];
  }else{
   echo 'error';
  }
 ?>
est ce q ce code se situe tout en haut de ta page welcome.php?
__________________
Les hommes naissent et demeurent libres et egaux en dignité et en droit. Les distinctions sociales ne peuvent etre fondées que sur l'utilité commune. Article 1 droits et de l'homme et du citoyen. 1789
ouatmad est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/05/2006, 19h51   #3
Invité de passage
 
Inscription : mai 2005
Messages : 14
Détails du profil
Informations forums :
Inscription : mai 2005
Messages : 14
Points : 1
Points : 1
oui
horri est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/05/2006, 19h53   #4
Rédacteur
 
Avatar de Swoög
 
Inscription : janvier 2003
Messages : 6 053
Détails du profil
Informations personnelles :
Âge : 24

Informations forums :
Inscription : janvier 2003
Messages : 6 053
Points : 7 144
Points : 7 144
Envoyer un message via MSN à Swoög Envoyer un message via Skype™ à Swoög
il doit y avoir un espace avant le <?php
__________________
Rédacteur "éclectique" (XML, 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 (en bas)
Swoög est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/05/2006, 19h56   #5
Membre émérite
 
Avatar de ozzmax
 
Inscription : novembre 2005
Messages : 986
Détails du profil
Informations personnelles :
Âge : 29

Informations forums :
Inscription : novembre 2005
Messages : 986
Points : 863
Points : 863
Envoyer un message via MSN à ozzmax
en tout cas session_start(); doit etre la premiere instruction en haut de tout...
tu ne dois pas le mettre au travers de ton code..comme dans ton post dans un if...

alors meme dans cette page écris session_start(); après ton <?php
et ca devrait etre correct
__________________
La perfection n'est pas un but, l'amélioration constante devrait l'être!
La position des Développeurs de developpez avec les explications
ozzmax est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/05/2006, 19h57   #6
Invité de passage
 
Inscription : mai 2005
Messages : 14
Détails du profil
Informations forums :
Inscription : mai 2005
Messages : 14
Points : 1
Points : 1
Citation:
il doit y avoir un espace avant le <?php
il y a pas d'espace mon ami Swoög
horri est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/05/2006, 20h02   #7
Rédacteur
 
Avatar de Swoög
 
Inscription : janvier 2003
Messages : 6 053
Détails du profil
Informations personnelles :
Âge : 24

Informations forums :
Inscription : janvier 2003
Messages : 6 053
Points : 7 144
Points : 7 144
Envoyer un message via MSN à Swoög Envoyer un message via Skype™ à Swoög
quand j'ai dit "il doit", je ne voulais pas dire "il est possible qu'il y ait"
je veux dire "il doit y avoir un espace avant le <?php"

parce que session_start(); est à la ligne 2 de ton fichier (comme le stipule ton mesage d'erreur)

ton message d'erreur est caractéristique du fait qu'un envoie de caractère au navigateur a provoqué l'envoie des headers HTTP.
de plus, le message d'erreur spécifie aussi que le premier envoie de donné qui provoque le message d'erreur se situe ligne 1 de ce même fichier,

sachant que ta ligne un contient <?php et qu'il n'y a aucune fonction d'affichage, j'en déduis qu'il y a forcément un caractètre, même invisible qui s'est glissé avant ta balise <?php

essaie de supprimer la ligne et de la réécrire... ^^
__________________
Rédacteur "éclectique" (XML, 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 (en bas)
Swoög est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/05/2006, 20h04   #8
Membre éclairé
 
Inscription : juillet 2005
Messages : 1 221
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 1 221
Points : 398
Points : 398
C'est très dangereux de passer les paramètres de l'utilisateur dans la session. Si un pirate vol la session il récupère les informations du membre inscrit et peut ensuite se connecter à loisir sur son compte.
Perso je prend juste l'id de l'utilisateur , ça ne sert à rien au pirate s'il le récupère.
psychoBob est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/05/2006, 20h08   #9
Membre émérite
 
Avatar de ozzmax
 
Inscription : novembre 2005
Messages : 986
Détails du profil
Informations personnelles :
Âge : 29

Informations forums :
Inscription : novembre 2005
Messages : 986
Points : 863
Points : 863
Envoyer un message via MSN à ozzmax
+1 psychobob!
ouin garder le password en session cé plutot louche...une fois authentifier tu devrais juste conserver l'id car tu vas en avoir besoin tout au long j'imagine dans tes requetes...
__________________
La perfection n'est pas un but, l'amélioration constante devrait l'être!
La position des Développeurs de developpez avec les explications
ozzmax est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h17.


 
 
 
 
Partenaires

Hébergement Web