[Session] Passage de l'id de session de pages en pages

Passage de l'id de session de pages en pages [Session] - PHP - Programmation

Marsh Posté le 24-03-2003 à 15:30:58    

Bonjour je voudrais avoir un renseignement :
 
Sur mon site j'ai fait 1 partie reservé aux membres et chaque membres doit s'identifier par login et password.
Une fois l'identification effectuée j'ai donc fait mon session_start mais je me demande s'il faut transmettre de page en page cette id ou bien c'est fait automatiquement?
 
Si je dois le passer de page en page je dois le faire passer par l'url?  
Puis à chaque page je dois donc récuperer mon id de session en faisant :
 
session_start(toto) sachant que ma variable $toto contient l'id

Reply

Marsh Posté le 24-03-2003 à 15:30:58   

Reply

Marsh Posté le 24-03-2003 à 16:22:00    

j'ai oublié de préciser que pour enregistrer une variable j'utilise $_SESSION et non pas session_register (je sais pas si ça peut avoir une incidence)

Reply

Marsh Posté le 24-03-2003 à 16:33:42    

un exemple :
 

Code :
  1. <?PHP
  2. if($PHPSESSID)
  3.    {
  4.     session_start($PHPSESSID);
  5.     if( empty($ma_var_de_login) || empty($ma_var_de_mdp) )
  6.         {
  7.         header("Location: page_erreur.html" );
  8.         exit();
  9.         }
  10.    }
  11. else
  12.    {
  13.    header("Location: page_erreur.html" );
  14.    exit();
  15.    }
  16. ?>


---------------
taciturnik maladik systemik
Reply

Marsh Posté le 24-03-2003 à 16:36:30    

onano a écrit :

un exemple :
 

Code :
  1. <?PHP
  2. if($PHPSESSID)
  3.    {
  4.     session_start($PHPSESSID);
  5.     if( empty($ma_var_de_login) || empty($ma_var_de_mdp) )
  6.         {
  7.         header("Location: page_erreur.html" );
  8.         exit();
  9.         }
  10.    }
  11. else
  12.    {
  13.    header("Location: page_erreur.html" );
  14.    exit();
  15.    }
  16. ?>




 
Et dans le cas où tout est bon je fait :
header("Location: page_ok.php" );
 
Mais comment faire passer la variable $PHPSESSID? par l'url?
header("Location: page_ok.php?PHPSESSID=$PHPSESSID" ); ?

Reply

Marsh Posté le 24-03-2003 à 16:39:10    

la variable $PHPSESSID est la variable declaree comme var de session dans ton php.ini
il n'y a pas besoin de la faire passer de page en page
 
non, si tout est OK, tu ne fais pas de redirection : ce script, je le mets en tout debut de chacune de mes pages et ainsi :
 
si pb : redirection
si OK : la page s'affiche


Message édité par onano le 24-03-2003 à 16:40:02

---------------
taciturnik maladik systemik
Reply

Marsh Posté le 24-03-2003 à 16:49:23    

onano a écrit :

la variable $PHPSESSID est la variable declaree comme var de session dans ton php.ini
il n'y a pas besoin de la faire passer de page en page
 
non, si tout est OK, tu ne fais pas de redirection : ce script, je le mets en tout debut de chacune de mes pages et ainsi :
 
si pb : redirection
si OK : la page s'affiche


 
en gros l'id de session est transmis automatiquement de page en page sans que je n'ai à le faire passer manuellement c'est bien ça?

Reply

Marsh Posté le 24-03-2003 à 17:01:30    

bon ça marche avec ou sans le test du $PHPSESSID :/
En gros il sert à rien :/
 
je vois pas comment PHP fait pour pas s'emmeler les pinceaux pcq là j'ai essayé sur 2 pc différents connecté en même temps sur le site avec 2 login différents et il redonne bien les bonnes variables enregistrés à chaque connectés :/

Reply

Marsh Posté le 24-03-2003 à 17:12:32    

Dinbougre888 a écrit :

bon ça marche avec ou sans le test du $PHPSESSID :/
En gros il sert à rien :/
 
je vois pas comment PHP fait pour pas s'emmeler les pinceaux pcq là j'ai essayé sur 2 pc différents connecté en même temps sur le site avec 2 login différents et il redonne bien les bonnes variables enregistrés à chaque connectés :/


ben ça sert à ça les sesssions non ??

Reply

Marsh Posté le 24-03-2003 à 17:14:54    

noldor a écrit :


ben ça sert à ça les sesssions non ??


 
:??:

Reply

Marsh Posté le 24-03-2003 à 17:54:27    

Je viens de tomber sur un autre problème :  
 
Pour enregistrer ma variable je fais :

$_SESSION['mavariable']


 
Pour voir si ma variable est enregistré je fais :

if (isset($_SESSION['mavariable']))


 
Le problème c'est que pour lui il me dit tout le temps que c'est FALSE !
 
Je me suis trompé dans ma syntaxe?
J'ai pourtant essayé aussi

if (isset($_SESSION[$mavariable]))

Reply

Marsh Posté le 24-03-2003 à 17:54:27   

Reply

Marsh Posté le 24-03-2003 à 17:55:35    

tu dois pas lui attribuer une valeur ?


---------------
oui oui
Reply

Marsh Posté le 24-03-2003 à 17:57:52    

art_dupond a écrit :

tu dois pas lui attribuer une valeur ?


 
si si y a bien une valeur dedans et je l'ai testé y a une valeur dedans mais le isset pour lui non ça passe pas :/

Reply

Marsh Posté le 24-03-2003 à 17:58:51    

ben teste ca (copier coller de la doc)
 

<?php
session_start();
// Use $HTTP_SESSION_VARS with PHP 4.0.6 or less
if (!isset($_SESSION['count'])) {
    $_SESSION['count'] = 0;
} else {
    $_SESSION['count']++;
}
?>


---------------
oui oui
Reply

Marsh Posté le 24-03-2003 à 18:02:58    

ah non je viens de trouver l'erreur; je faisais

$_SESSION['mavariable';


 
au lieu de  

$_SESSION['mavariable']=$mavariable ;


 
Et quand je faisais un  

echo $mavariable


 
il me retourne bien une valeur mais à mon avis c'était un truc qui était resté quelque part en cache je ne sais où

Reply

Marsh Posté le 24-03-2003 à 18:08:28    

bon bah merci tout le monde ça marche :jap:

Reply

Marsh Posté le 24-03-2003 à 20:55:24    

si register global est = a on
alors $mavariable est = a $_SESSION['mavariable'] dans chaque page ou tu fais session_start et si $_SESSION['mavariable'] existe evidemment

Reply

Marsh Posté le 25-03-2003 à 01:01:07    

mon dieu  :sarcastic:


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed