|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | |||
|
Invité de passage
![]() Inscription : septembre 2006 Messages : 15 ![]() |
Bonjour à tous,
Je rencontre un problème de variable de session sur mon site (3w.profilicc.com) suite au déménagement de ce dernier de chez Free à un hébergeur payant. Je tiens à signaler que je suis un gros newbie en php, css et html (et le but de tout newbie est de ne pas le rester trop longtemps J'ai lancé easyphp sur mon pc pour acceder par Explorer au contenu local de mon site afin de tester le comportement de la variable. Comme sur le serveur distant, 1 fois sur 2, la variable n'est pas trouvée et un message apparait au dessus de la page affichée : Citation:
Code :
Quelqu'un peut-il m'aider ? ^__^ |
|||
|
|
00
|
|
|
#2 | ||
|
Inactif
![]() Inscription : septembre 2004 Messages : 11 753 ![]() |
Tout d'abord je poserai une question. Cette notice arrive lorsque c'est la première page et que tu n'as pas défini ta variable session ou c'est après ?
Car dans l'un des cas $var n'existe pas et c'est ce que veut te dire le notice Je dirais, fais comme ceci : Code :
|
||
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : septembre 2006 Messages : 15 ![]() |
A la premiere page, la variable fonctionne. Si je clic sur un lien, la page suivante va s'afficher mais avec cette erreur de variable (l'affichage de la page est incomplet car il n'a pas accedé au dossier relatif à la variable). Si je reclic une troisieme fois sur un lien, la variable disparait à nouveax ... et ainsi de suite.
Donc je perd puis retrouve une variable clic après clic. Alors qu'avant, une fois la variable déterminée, ma session restée en place. J'ai testé ton code Kerod. C'est pas mieux. |
|
|
00
|
|
|
#4 | |||||
|
Inactif
![]() Inscription : septembre 2004 Messages : 11 753 ![]() |
Avant ça fonctionnait peut être à cause de la configuration dans le php.ini qui le permettait (). A mon avis, ton nouveau php.ini ne le permet plus.
Pour plus de détail, avant d'une variable session pouvait se faire par l'appel du nom lui même, donc si tu avais $_SESSION['var'] tu pouvais l'appeler également $var. Pour revenir à ton problème, ça m'étonne que ça fonctionne pas Alors j'ai testé comme ceci : Code :
Citation:
Code :
ps : j'ai réduit le code au minimum nécessaire
|
|||||
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : septembre 2006 Messages : 15 ![]() |
Arff ! ça marche toujours pas.
Je viens de discuter avec mon hébergeur qui apporte les éléments suivant : ____________ " PHP5 est installé sur le serveur. Cela peut avoir une incidence aussi, si le script a été codé pour PHP4. Tout dépend des fonctions utilisées. Mais si c'est 1 fois sur deux j'opte malgré tout pour une erreur de codage. Normalement la variable de session est définie et stockée par PHP lui-même. La où tu peux rencontrer un problême c dans les chemins absolus de ton script et donc si tu as "bidouillé" un dossier spécial de stockage de ces variable il me semble possible que ton script soit incapable de le retrouver du fait que le "path" n'est plus le même." _____________ Voilà. Je ne sais pas comment modifier le path ni à quoi il correspond dans le codage. Je ne sais pas non plus comment on réencode du php 4 en php 5. |
|
|
00
|
|
|
#6 |
|
Membre expérimenté
![]() Développeur de bug Inscription : janvier 2003 Messages : 526 ![]() |
Salut SnowBall_Party !
juste une tentative a faire : essaye de renommer ta variable $var.
__________________
"le rhume distillation - L’estomac est la cucurbite, le cerveau le chapiteau, & le nez le réfrigérant par lequel s’écoule goutte à goutte le produit de la distillation." de Avicenne Le monde se divise en deux: ceux qui utilisent le tag et les autres.Un problème? venez en découdre! |
|
|
00
|
|
|
#7 |
|
Membre éclairé
![]() Inscription : décembre 2004 Messages : 658 ![]() |
Bon ton erreur est du au fait que free a des disposition particuliere tres chiante.
Je m'explique pour free, toutes variables $_Session['xxx'] et $_GET['yy'] peut etre recupere de cette facon $yy et $xxx au lieu de passer par les methodes classiques. Ce qui est en fait fortement deconseillé dans les doc php. Tout les autres ne le font plus resultats ta variable $yy qui etait en fait $_get['yy'] chez free est maintenant une variable a part entiere qui ne vaut plus rien maintenant puisque rien n'y est affecté. |
|
|
00
|
|
|
#8 | ||
|
Invité de passage
![]() Inscription : septembre 2006 Messages : 15 ![]() |
Problème résolu après moultes investigations ! Le code de la variable est bon pour php 4 mais pas assez "rigoureux" pour php 5, la version en place sur le seveur de mon hébergeur. Merci d'ailleurs à lui pour le coup de main / webdomain is pro ;-)
Le code correct : Code :
|
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com