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 27/03/2006, 11h46   #1
Invité de passage
 
Inscription : mars 2006
Messages : 33
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 33
Points : 4
Points : 4
Par défaut [Sécurité] code incompatible entre V4.1.2 et V4.3.10

Bonjour,
Je débute sur PHP et j'ai hérité d'une appli développée en PHP3, et qui tourne en V4.1.2 en prod.
J'ai voulu mettre à jour ma version en local, hélas la V.4.1.2 ne se télécharge apparemment plus. J'ai donc pris easy PHP et j'ai la version V.4.3.10

Problème : je n'ai plus rien qui fonctionne !!!

Voici un de mes plus gros soucis :
J'ai index.php qui "require" index_lib.php
Et dans index_lib.php j'ai :

Code :
1
2
3
4
5
6
if (empty($DSO)) { 
$DSO["session"] = 0; 
setcookie("DSO[session]",$DSO["session"],time()+3600); 
header("Location: http://localhost/index.php"); 
exit(); 
}
problème : quand il revient dans index.php, et qu'il rappelle index_lib.php, il a perdu la valeur de $DSO["session"] (alors que dans les précédentes versions il la conservait...)
RESULTAT : index et index_lib se mordent la queue !!!

Est-ce clair ?
Qqun entrevoit-il une solution ?
Merci !!!
Sophy75 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/03/2006, 11h47   #2
Rédactrice
 
Avatar de xave
 
Inscription : mai 2002
Messages : 860
Détails du profil
Informations personnelles :
Âge : 34

Informations forums :
Inscription : mai 2002
Messages : 860
Points : 824
Points : 824
cf ma réponse précédente!
__________________
Les règles du forum
Cours et tutoriels php
Développements web (CSS, (X)HTML,javascript, etc...)
Cours et tutoriels MySQL
Tutoriels Ajax
Initiation à PHP-GTK1


Il n'est point de bonheur sans liberté, ni de liberté sans courage. Péricles
xave est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/03/2006, 11h53   #3
Membre confirmé
 
Inscription : février 2003
Messages : 285
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 285
Points : 255
Points : 255
Envoyer un message via ICQ à Sion_Sempai Envoyer un message via MSN à Sion_Sempai Envoyer un message via Yahoo à Sion_Sempai
quelque chose me dit que c'est la récupération des données du coockie qui foire

salut xave
Sion_Sempai est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/03/2006, 11h57   #4
Rédactrice
 
Avatar de xave
 
Inscription : mai 2002
Messages : 860
Détails du profil
Informations personnelles :
Âge : 34

Informations forums :
Inscription : mai 2002
Messages : 860
Points : 824
Points : 824
Salut l'mulot,

C'est bien possible en effet, mais à mon avis, il y a aussi des problèmes de version...
__________________
Les règles du forum
Cours et tutoriels php
Développements web (CSS, (X)HTML,javascript, etc...)
Cours et tutoriels MySQL
Tutoriels Ajax
Initiation à PHP-GTK1


Il n'est point de bonheur sans liberté, ni de liberté sans courage. Péricles
xave est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/03/2006, 11h59   #5
Membre confirmé
 
Inscription : février 2003
Messages : 285
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 285
Points : 255
Points : 255
Envoyer un message via ICQ à Sion_Sempai Envoyer un message via MSN à Sion_Sempai Envoyer un message via Yahoo à Sion_Sempai
bin justement

Problèmes de récupérations dû aux problèmes de version

quelqu'un a déjà penser a développer un "convertisseur" de code ?
Sion_Sempai est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/03/2006, 12h00   #6
Rédactrice
 
Avatar de xave
 
Inscription : mai 2002
Messages : 860
Détails du profil
Informations personnelles :
Âge : 34

Informations forums :
Inscription : mai 2002
Messages : 860
Points : 824
Points : 824
Ben... toi à l'instant... allez, hop! Au boulot!

Plus sérieusement, c'est vrai que ce serait bien pratique mais peut être en existe-t'il déjà quelque part?
__________________
Les règles du forum
Cours et tutoriels php
Développements web (CSS, (X)HTML,javascript, etc...)
Cours et tutoriels MySQL
Tutoriels Ajax
Initiation à PHP-GTK1


Il n'est point de bonheur sans liberté, ni de liberté sans courage. Péricles
xave est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/03/2006, 12h04   #7
Invité de passage
 
Inscription : mars 2006
Messages : 33
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 33
Points : 4
Points : 4
Citation:
cf ma réponse précédente!
Oui et en effet je préfèrerais mettre à jour le code, mais là ça va être costaud car je n'ai pas les notions de bases d'une part (bon j'ai des bonnes notions de développement et j'arrive à comprendre le code actuel quand même...) et je ne connais pas les différences entre les 2 versions !

Si vous pouviez juste m'aider sur ce bout de code, après je pourrai me débrouiller je pense...

Ah oui, au passage dans le même code : index.php contient une zone login. Avant index_lib.php pouvait récupérer la valeur en faisant $login, maintenant ça ne marche plus !
Sophy75 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/03/2006, 12h07   #8
Membre confirmé
 
Avatar de allyson
 
Inscription : août 2003
Messages : 248
Détails du profil
Informations forums :
Inscription : août 2003
Messages : 248
Points : 232
Points : 232
Envoyer un message via Yahoo à allyson
pour ce qui est du login tout dépend comment il est envoyé! si c'est en utilisant la méthode post alors la récupération se fait avec $_POST['login'] si c'est get alors: $_GET['login']
__________________
.: and Justice for all :.
------------------------------------------------------------
Membre du jury de l'élection de Mister DVP.com
les règles du forum
de penser au tag
allyson est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/03/2006, 12h07   #9
Rédactrice
 
Avatar de xave
 
Inscription : mai 2002
Messages : 860
Détails du profil
Informations personnelles :
Âge : 34

Informations forums :
Inscription : mai 2002
Messages : 860
Points : 824
Points : 824
Citation:
Envoyé par Sophy75
Citation:
cf ma réponse précédente!
Oui et en effet je préfèrerais mettre à jour le code, mais là ça va être costaud car je n'ai pas les notions de bases d'une part (bon j'ai des bonnes notions de développement et j'arrive à comprendre le code actuel quand même...) et je ne connais pas les différences entre les 2 versions !

Si vous pouviez juste m'aider sur ce bout de code, après je pourrai me débrouiller je pense...

Ah oui, au passage dans le même code : index.php contient une zone login. Avant index_lib.php pouvait récupérer la valeur en faisant $login, maintenant ça ne marche plus !
Sans doute une histoire de désactivation des variables globales dans php.ini, toutefois pour une question de sécurité, je te déconseille fortement de les passer à "ON".
A ce moment, refais le formulaire avec une méthode "post" au besoin et récupère ta variable avec un
Code :
$login=$_POST['var_formulaire'];
__________________
Les règles du forum
Cours et tutoriels php
Développements web (CSS, (X)HTML,javascript, etc...)
Cours et tutoriels MySQL
Tutoriels Ajax
Initiation à PHP-GTK1


Il n'est point de bonheur sans liberté, ni de liberté sans courage. Péricles
xave est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/03/2006, 12h12   #10
Rédacteur
 
Homme
Geek entrepreneur
Inscription : novembre 2004
Messages : 1 035
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Geek entrepreneur

Informations forums :
Inscription : novembre 2004
Messages : 1 035
Points : 1 813
Points : 1 813
La question que tu peux te poser :"mais que c'est ce que $DSO et comment est il rempli ?"
Sinon il me semble que c'est dans cette version que les variables HTTP_GET_VARS et HTTP_POST_VARS ont été remplacés par $_GET et $_POST cependant elles doivent toujours exister pour souci de compatibilité.
C'est peut être aussi dans cette version que les fonctions sur les sessions ont changé. Je te conseille de voir la doc officielle.
Et un autre changement possible dans cette version c'est le passage de paramêtre. Avant tu pouvais utiliser $mavariable si elle venait de ton post ou get. Dorénavant tu es obligé de faire $_POST['mavariable']
Beaucoup de modifs en perspective ^^
hugo123 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/03/2006, 12h13   #11
Membre confirmé
 
Inscription : février 2003
Messages : 285
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 285
Points : 255
Points : 255
Envoyer un message via ICQ à Sion_Sempai Envoyer un message via MSN à Sion_Sempai Envoyer un message via Yahoo à Sion_Sempai
je me demande aussi si c'est pas une histoire de registered globals dans php.ini (suis pas sûr que ca s'ecrive comme ca )

Mais euhh !!

Xave on a encore eu la meme idée !!
Sion_Sempai est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/03/2006, 12h18   #12
Membre confirmé
 
Avatar de allyson
 
Inscription : août 2003
Messages : 248
Détails du profil
Informations forums :
Inscription : août 2003
Messages : 248
Points : 232
Points : 232
Envoyer un message via Yahoo à allyson
Citation:
Envoyé par Sion_Sempai
je me demande aussi si c'est pas une histoire de registered globals dans php.ini (suis pas sûr que ca s'ecrive comme ca )
c'est register_globals (enfin je crois) et ce dont a parlé hugo, je crois!
je crois aussi que c'est en rapport avec l'utilisation de session_register() ou $_SESSION[]
__________________
.: and Justice for all :.
------------------------------------------------------------
Membre du jury de l'élection de Mister DVP.com
les règles du forum
de penser au tag
allyson est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/03/2006, 13h33   #13
Rédactrice
 
Avatar de xave
 
Inscription : mai 2002
Messages : 860
Détails du profil
Informations personnelles :
Âge : 34

Informations forums :
Inscription : mai 2002
Messages : 860
Points : 824
Points : 824
Citation:
Envoyé par allyson
Citation:
Envoyé par Sion_Sempai
je me demande aussi si c'est pas une histoire de registered globals dans php.ini (suis pas sûr que ca s'ecrive comme ca )
c'est register_globals (enfin je crois) et ce dont a parlé hugo, je crois!
je crois aussi que c'est en rapport avec l'utilisation de session_register() ou $_SESSION[]
Non, les variables globales ne sont pas les variables de session et elles sont tout à fait indépendantes. Tu peux parfaitement utiliser les sessions en ayant regiser_global à OFF.

Un petit lien fort utile dans ce cas, et il te permettra de faire le lien entre les anciennes variables (de ton ancienne version) et les nouvelles Sophy75, c'est par là

Sion>> Les grands esprits...
__________________
Les règles du forum
Cours et tutoriels php
Développements web (CSS, (X)HTML,javascript, etc...)
Cours et tutoriels MySQL
Tutoriels Ajax
Initiation à PHP-GTK1


Il n'est point de bonheur sans liberté, ni de liberté sans courage. Péricles
xave est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/03/2006, 13h56   #14
Invité de passage
 
Inscription : mars 2006
Messages : 33
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 33
Points : 4
Points : 4
Citation:
Un petit lien fort utile dans ce cas, et il te permettra de faire le lien entre les anciennes variables (de ton ancienne version) et les nouvelles Sophy75, c'est par là
OK merci pour votre aide, je vais essayer de reprendre mes pages une par une et de les ré-écrire !

Merci Xave pour le lien
Sophy75 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/03/2006, 13h59   #15
Rédactrice
 
Avatar de xave
 
Inscription : mai 2002
Messages : 860
Détails du profil
Informations personnelles :
Âge : 34

Informations forums :
Inscription : mai 2002
Messages : 860
Points : 824
Points : 824
Pas d eproblème Sophy75, reviens si tu as besoin.
__________________
Les règles du forum
Cours et tutoriels php
Développements web (CSS, (X)HTML,javascript, etc...)
Cours et tutoriels MySQL
Tutoriels Ajax
Initiation à PHP-GTK1


Il n'est point de bonheur sans liberté, ni de liberté sans courage. Péricles
xave est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 02h24.


 
 
 
 
Partenaires

Hébergement Web