|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||||
|
Nouveau Membre du Club
![]() Inscription : janvier 2005 Messages : 87 ![]() |
Bonjour à tous,
J'ai un serveur Windows que je viens de mettre à jour de Apache 2/PHP 4.4/MySQL 5.0 à Apache 2.2/PHP 5.2.17/MySQL 5.1. J'utilise une configuration dans le php.ini standard et tout semble fonctionner correctement. Le seul truc c'est que sur mon site j'ai un problème particulier : Les sessions disparaissent !! J'ai fait une page simple de test comme suit : Code :
Or là, je me retrouve à chaque fois avec un seul et unique - J'ai aussi essayé de faire une incrémentation... genre : Code :
![]() (Info : J'ai testé ces codes sur un autre serveur avec succès En cherchant un peu, beaucoup, désespérément... j'ai rien trouvé ![]() Merci à ceux qui auraient une idée/piste à me soumettre Configuration partiel du php.ini (Commentaires en moins...) : Code :
|
||||||
|
|
00
|
|
|
#2 | ||
|
Membre Expert
![]() Inscription : janvier 2006 Messages : 951 ![]() |
avec firebug ou consort est ce que tu vois passer les entete set-cookie qui servent à apprendre à ton navigateur quelle est la valeur du coockie...
ensuite il est possible de voir le fichier log ? Code ini :
php déteste qu'on emette des caractères "invisibles" (au mieux des retours à la ligne, des espaces ... ) avant un session_start. regarder tes erreurs avec les avertissements au max t'apprendra bcp de choses. au fait, je veux pas être méchant metre a jour une version obsolete par une autre version obsolette de php... quitte a changer de langage... (php 4 != php 5.x ) astuce: ceci est inutile dans bien des cas ... et ceci est déprécié en faveur de
__________________
PHP fait nativement la validation d'adresse électronique Utilisez le bouton résolu! |
||
|
|
00
|
|
|
#3 | |||
|
Nouveau Membre du Club
![]() Inscription : janvier 2005 Messages : 87 ![]() |
Salut et merci pour ton message,
Citation:
Citation:
J'ai vérifié sur le serveur (dans le répertoire de stockage des cookies) et le fichier de session existe bien (sess_fr3i7tl6jf278f0c9dsnlt55d3). Le fichier de log ne se remplit pas... j'ai essayé de modifié error_log mais si je mets une valeur pour ce paramètres, le serveur ne démarre plus J'ai modifié les paramètres du php.ini pour avoir les retours d'erreurs (E_ALL | E_STRICT) mais aucune erreur ne remonte depuis la page de test sans que cela ne fonctionne pour autant. Citation:
Sinon concernant les balises d'ouvertures/fermetures de code PHP (<?, <?php, ?>) on chipote un peu mais tu as tout a fait raison... comme j'ai tapé ce code manuellement lors de la rédaction de mon post, je n'avais pas Eclipse pour automatiquement ajouté le php à la suite du <?. Les mauvaises habitudes ont un bel avenir avec de tels outils Si vous avez d'autres piste... je suis preneur... |
|||
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() Inscription : janvier 2006 Messages : 951 ![]() |
bonjour
on m'a donc menti... http://www.apachefriends.org/en/xampp-windows.html si tu developpes avec eclipse, j'imagine que tu n'as pas de caractères "affiché" avant session_start() tu as fait des tests de fonctionnement de $_SESSION avec uniquement ton code dans un fichier test complètement décorélé de tout le reste?
__________________
PHP fait nativement la validation d'adresse électronique Utilisez le bouton résolu! |
|
|
00
|
|
|
#5 |
|
Membre Expert
![]() Inscription : janvier 2006 Messages : 951 ![]() |
Si tu détruits le cookie sur le serveur, ton fichier de log devrait obligatoirement s’incrémenter d'une Notice sur le thème $_SESSION['blablabla'] non initialisée... et la notice y sera quelque soit la version de php.
tant qu'on n'a pas ça, tu peux avoir un objet serialisé dans $_SESSION qui hérite de ArrayObject ou qui implemente ArrayAccess avec une surcharge de __toString(). là je passe en mode complot fait des var_dump($_SESSION); au lieu de echo $_SESSION["test"];
__________________
PHP fait nativement la validation d'adresse électronique Utilisez le bouton résolu! |
|
|
00
|
|
|
#6 |
|
Membre Expert
![]() Inscription : janvier 2006 Messages : 951 ![]() |
au fait j'ai une explication pour ta session ne fonctionnant pas pour ton incrémentation. Suit les conseils prodigués lors du 1ere commentaire, active les log à fond et tu verras.
__________________
PHP fait nativement la validation d'adresse électronique Utilisez le bouton résolu! |
|
|
00
|
|
|
#7 | |
|
Nouveau Membre du Club
![]() Inscription : janvier 2005 Messages : 87 ![]() |
Salut,
J'ai été interpellé par cette remarque : Citation:
Si je remet le site en place, les sessions sont immédiatement perdues Je vais donc tout virer et remettre les dossiers/fichiers 1 à 1 afin de trouver qui pose problème. Je n'arrive pas à faire fonctionner les logs !? Ca empeche Apache de démarrer... Je commence à me demander si je ne devrai pas ré-installer le serveur "from scratch". Merci à toi ![]() PS : Concernant Xampp, j'avoue ne pas avoir d'explication... J'ai lu un peu partout qu'Apache pour Windows n'était compatible qu'avec PHP VC6 et non VC9... Comme je n'arrivais pas à configurer PHP 5.3 VC9 sur Apache 2.2, je me suis reporté sur PHP¨5.2 et là miracle ça a fonctionné du premier coup. |
|
|
|
00
|
|
|
#8 |
|
Membre Expert
![]() Inscription : janvier 2006 Messages : 951 ![]() |
c'est des allemands qui font ça ... ça se trouvent ils recompilent chez eux.
un fichier independant, sans ref à un autre ou au bootstrap devrait fonctionner tout seul meme si le reste du code est présent sauf si ya des includes "magiques"... pour voir la magie à l'oeuvre http://us2.php.net/manual/en/functio...nned-files.php http://us2.php.net/manual/en/function.ini-get-all.php http://us2.php.net/manual/en/functio...uded-files.php
__________________
PHP fait nativement la validation d'adresse électronique Utilisez le bouton résolu! |
|
|
00
|
|
|
#9 |
|
Membre Expert
![]() Inscription : janvier 2006 Messages : 951 ![]() |
mais t'a raison la priorité numéro 1 c'est d'avoir des logs qui fonctionnent pour voir la belle fonction inconnue "int_val()"
__________________
PHP fait nativement la validation d'adresse électronique Utilisez le bouton résolu! |
|
|
00
|
|
|
#10 |
|
Nouveau Membre du Club
![]() Inscription : janvier 2005 Messages : 87 ![]() |
Re,
Bon, j'ai avancé sur l'origine de mon problème... voici ce qui se passe : Lorsque je charge une page sur mon site, le fichier index.php (à la racine du site) est automatiquement appelée et c'est ce fichier qui réinitialise la session ! Les fonction que tu cites me renvoient : - get_icluded_files() : D:\Site_Web\wwwroot\agora\test.php (Mon fichier de test) - php_ini_scanned_files() : Rien (Chaine vide) - ini_get_all() : Ma configuration php.ini J'avance... merci encore à toi pour ton aide ![]() PS : Oui, c'est pas int_val() mais intval() |
|
|
00
|
|
|
#11 |
|
Nouveau Membre du Club
![]() Inscription : janvier 2005 Messages : 87 ![]() |
Bon... Ok... Honte sur moi
Le soucis provient de la configuration vhost d'Apache... il faisait de la réécriture d'URL dynamique. J'ai trop trop honte de vous avoir fait perdre du temps sur une annerie pareil ![]() Merci beaucoup pour votre aide qui m'a permis d'avancer car j'étais à 10000Km de la solution ! |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com