[php] probleme de session

probleme de session [php] - Programmation

Marsh Posté le 07-02-2002 à 00:28:18    

salut,  
je me demandais comment récupérer la valeur de login dans la fonction suivante:
 
is_session_register(login)
 
??
 
Et aussi: utiliser les sessions me donne ce message d'erreur (WinXP+EasyPHP 1.2 je crois)
 
Warning: open(/tmp\sess_372b1b9e301e1078209626f1daef3fcd, O_RDWR) failed: m (2) in c:/easyphp/www/basket/test.php on line 2
 
Je pense que c'est dans la config que ça doit se trouver, mais où?
 
Merci

Reply

Marsh Posté le 07-02-2002 à 00:28:18   

Reply

Marsh Posté le 07-02-2002 à 05:28:32    

alors ca c'est tout con : $login ou mieux : $HTTP_SESSION_VARS[login]
....... tu sais qu'il existe une DOC PHP ?
car la en cherchant a peine 10sec tu aurais eu ta reponse  :sarcastic:
 
http://www.php.net/manual/fr/ref.session.php
 
il a pas trouvé le fichier contenant la session -> a regler dans le php.ini ! (cf DOC pour les parametres)

Reply

Marsh Posté le 07-02-2002 à 11:07:42    

potiron a écrit a écrit :

alors ca c'est tout con : $login ou mieux : $HTTP_SESSION_VARS[login]
....... tu sais qu'il existe une DOC PHP ?
car la en cherchant a peine 10sec tu aurais eu ta reponse  :sarcastic:
 
http://www.php.net/manual/fr/ref.session.php
 
il a pas trouvé le fichier contenant la session -> a regler dans le php.ini ! (cf DOC pour les parametres)  




 
Et pourtant, je peux t'assurer que j'y passe ma vie dans la doc, très bien faire d'ailleurs, en PDF... Vive Nexen!!
 
Sinon, pour le php.ini, j'ai regardé les options, et je ne vois pas ce qui y est mal configuré...
 
J'ai ça:
 
[Session]
session.save_handler      = files    
session.save_path         =/tmp
session.use_cookies       = 1
session.name              = PHPSESSID
session.auto_start        = 0
session.cookie_lifetime   = 0
session.cookie_path       = /
session.cookie_domain     =  
session.serialize_handler = php
session.gc_probability    = 1
session.gc_maxlifetime    = 1440
session.referer_check     =  
session.entropy_length    = 0
session.entropy_file      =
session.entropy_length    = 16
session.entropy_file      = /dev/urandom
session.cache_limiter     = nocache
session.cache_expire      = 180
session.use_trans_sid     = 1
url_rewriter.tags         = "a=href,area=href,frame=src,input=src,form=fakeentry"
 
[edit]
J'ai aussi:
 register_globals = On
[/edit]

 

[jfdsdjhfuetppo]--Message édité par haazheel--[/jfdsdjhfuetppo]

Reply

Marsh Posté le 07-02-2002 à 11:10:43    

est ce que ton rep /tmp existe sur ton serveur ?
 
Alex01 :hello:

Reply

Marsh Posté le 07-02-2002 à 11:32:44    

oui, mais il doit être dans quel répertoire?
 
Ce serait pas XP qui poserait problème?

Reply

Marsh Posté le 07-02-2002 à 11:37:50    

Il doit être dans le repertoire PHP si tu as installé PHP sous ce nom de repertoire.
 
Sous Windows c'est plustôt "sessiondata"
 
Alex01 :sol:

Reply

Marsh Posté le 07-02-2002 à 13:05:52    

Alex01 a écrit a écrit :

Il doit être dans le repertoire PHP si tu as installé PHP sous ce nom de repertoire.
 
Sous Windows c'est plustôt "sessiondata"
 
Alex01 :sol:  




 
Pour être sûr, j'ai créé un /tmp dans tous les repertoires de easyphp: apache, php, localhost...
 
Marche pas
 
C'est koi session data?

Reply

Marsh Posté le 07-02-2002 à 13:13:53    

edite ton fichier php.ini qui se touve dans ton répertoire windows.
tu dois y trouver une ligne :
session.save_path =  C:\PHP\sessiondata
 
c'est le repertoire dans lequel PHP stoke tes sessions donc tes variables.
Si tu n'as pas ces paramètres, met les miens et crais un repertoire c:\PHP\sessiondata et essaye à nouveau  :wahoo:  
 
Alex01 :bounce:

Reply

Marsh Posté le 07-02-2002 à 13:36:48    

Alex01 a écrit a écrit :

edite ton fichier php.ini qui se touve dans ton répertoire windows.
tu dois y trouver une ligne :
session.save_path =  C:\PHP\sessiondata
 
c'est le repertoire dans lequel PHP stoke tes sessions donc tes variables.
Si tu n'as pas ces paramètres, met les miens et crais un repertoire c:\PHP\sessiondata et essaye à nouveau  :wahoo:  
 
Alex01 :bounce:  




 
Je vais voir ça...
 
Sinon, ils sont où les tiens? :)

Reply

Marsh Posté le 07-02-2002 à 13:43:58    

Mon paamètre dans le php.ini
 
session.save_path =  C:\PHP\sessiondata
 
met le ! :eek2:

Reply

Marsh Posté le 07-02-2002 à 13:43:58   

Reply

Marsh Posté le 07-02-2002 à 13:48:53    

sous windows un path : c:\patati\patata
sous linux : /root/file/prout
 
y a une légère erreur sur ton path...


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 07-02-2002 à 14:00:46    

c'est bon, ça marche...
 
En fait, avec EasyPHP, ya des fichiers à copier dans le rep windows et windows\system... dont le php.ini, que j'ai modifé, et rulez!! :D  
 
merci à vous tous :jap:

Reply

Marsh Posté le 07-02-2002 à 15:17:44    

Nouveaux problèmes!!
 
1)Est ce qu'un session_start doit être défini avant un echo? (comme avec les cookies par exemple?)
 
2)J'ai ce code, et je n'arrive pas à récupérer $HTTP_SESSION_VAR[pseudo_membre] après...
 

Citation :

if($cookie_pseudo!="" )
{
$pseudo_membre = $cookie_pseudo;
}
elseif($login_pseudo_membre!="" )
{
$pseudo_membre = $login_pseudo_membre;
}
session_start();
session_register('pseudo_membre';);
 
echo $HTTP_SESSION_VAR[pseudo_membre];

Reply

Marsh Posté le 07-02-2002 à 15:28:42    

je crois qu'il manque un $ dans ton session_register...


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 07-02-2002 à 16:09:56    

Sh@rdar a écrit a écrit :

je crois qu'il manque un $ dans ton session_register...  




 
non non, c'est bien ça...
 
session_register et session_is_registered ne prennent pas le $

Reply

Marsh Posté le 07-02-2002 à 16:17:37    

en tout cas non y a pas besoin de le mettre en tête de script comme un header ou un setcookie..
 
je vérifie quand même quelques trucs...

 

[jfdsdjhfuetppo]--Message édité par Sh@rdar--[/jfdsdjhfuetppo]


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 07-02-2002 à 16:43:35    

Grrr...
 
pour chaque page, j'ai un fichier index.php qui inclut le header, le corps de page, et le footer.
 
Pour chaque page de membre, j'ai mis au début de celles ci le code suivant:
 
session_start();
if(!session_is_registered('pseudo_membre';))
    {
    echo 'Vous n\'êtes pas autoriser a acceder a cette zone';
echo "<script language=\"JavaScript\">document.location.replace(\"index.php\" ); </script>";
    exit;
    }

 
Pour vérifier qu'une session est bien ouverte.
 
Mais j'ai le message d'erreur suivant:
 
Warning: Cannot send session cache limiter - headers already sent (output started at header.inc.php:6) in membres/propose_news.php on line 2
 
Si je mets session_autostart sur 1, c'est bon, plus de problèmes. Mais sur Free, cette valeur est à 0, donc je dois m'aligner, et trouver une solution qui m'échappe pour le moment.
 
alors, je dis HELP!!  :lol:

Reply

Sujets relatifs:

Leave a Replay

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