Décalage de 8 jours sur les dates
Envoyé par: motik ()
Date: jeudi 14 février 2008 15:32:54

Bonjour,

J'ai depuis quelque temps un bug bizarre : toutes les dates sont décalées de 8 jours.

Par exemple la page d'accueil s'affiche à la date d'aujourd'hui + 8 jours, le bouton "jour suivant" m'amène 9 jours plus tard, le bouton "jour précédent" m'amène 7 jours plus tôt (-1 + 8)...

En outre les heures de lever et coucher du soleil, et de jour et de nuit aéronautiques sont farfelues et toutes égales entre elles.

Une idée sur la cause du problème ?

Merci d'avance

Options: RépondreCiter
Re: Décalage de 8 jours sur les dates
Envoyé par: claratte ()
Date: jeudi 14 février 2008 21:27:08

Bonjour,

Pour les bugs il faut utiliser le bts : http://bts.openflyers.org

Si vous n'êtes pas hébergé chez nous, cela peut provenir d'une mauvaise config de la date du serveur... qui serait décalée de 8 jours.

Christophe LARATTE
OpenFlyers manager

Options: RépondreCiter
Re: Décalage de 8 jours sur les dates
Envoyé par: motik ()
Date: vendredi 15 février 2008 07:49:46

J'avais d'abord pensé à une mauvaise date du serveur (je suis hébergé chez Free), mais lorsque je sélectionne la date d'aujourd'hui sur le calendrier, il apparaît bien "javascript:submitDate('2008','2','15');". Pourtant la page qui s'affiche ensuite est celle du 23 !

Je suis en version 1.3.1, j'avais oublié de le préciser.

Options: RépondreCiter
Re: Décalage de 8 jours sur les dates
Envoyé par: claratte ()
Date: vendredi 15 février 2008 10:36:53

Désolé, mais je n'ai pas d'idée...

Christophe LARATTE
OpenFlyers manager

Options: RépondreCiter
Re: Décalage de 8 jours sur les dates
Envoyé par: motik ()
Date: lundi 18 février 2008 08:16:46

Après diverses expérimentations j'ai trouvé la cause du problème : il semble que tous les passages de variables vers les fonctions php se fassent par référence !!!

Ainsi à chaque fois que, dans une fonction, une variable locale porte le même nom que l'un des paramètres de la fonction, ce paramètre est modifié en sortie, même s'il n'avait pas été déclaré avec un "&"

Bien sûr ce comportement du serveur est totalement anormal. Maintenant la question est de savoir quelle en est la cause : Est-ce un paramétrage de php sur mon serveur ? Je suis chez Free et, dans ce cas, tous les autres utilisateurs d'OpenFlyers hébergés par Free devraient avoir le même problème.

Ou est-ce un paramétrage de mon installation qui fait que les variables sont passées par défaut par référence ?

Options: RépondreCiter
Re: Décalage de 8 jours sur les dates
Envoyé par: claratte ()
Date: lundi 18 février 2008 15:20:40

Quelle est votre version de PHP ?

Christophe LARATTE
OpenFlyers manager

Options: RépondreCiter
Re: Décalage de 8 jours sur les dates
Envoyé par: motik ()
Date: lundi 18 février 2008 16:41:03

PHP Version 5.1.3RC4-dev

J'ai commencé à faire des modifications dans les sources pour contourner le problème, en changeant les noms de certaines variables, mais il faut que je trouve toutes les fonctions "à risque", c'est à dire celles où une variable locale reprend le nom d'un paramètre passé par valeur.

Si cela vous intéresse je pourrai vous communiquer les changements que j'ai effectués, cela pourra contribuer à rendre le code plus robuste en cas de bug de php.

Options: RépondreCiter
Re: Décalage de 8 jours sur les dates
Envoyé par: claratte ()
Date: mardi 19 février 2008 10:12:16

;-)

Ce n'est pas le code d'OF qui manque de robustesse.

Of 1.3.1 est compatible PHP 5.

La seule qui faut faire c'est dans le fichier index.php. Il doit y avoir une declaration de variable PHP qui permet d'avoir un comportement "comme sous PHP 4".

Peut-etre que cette declaration n'est pas presente (ce qui me surprendrait mais je n'ai pas le code sous les yeux pour verifier).

Vous dites que vous etes chez free : faites une recherche sur le forum, et vous verez que votre probleme a deja ete aborde (et je crois) solutionner. Il y a peut etre meme le resumer de la solution sur notre wiki, mais je ne m'en rappelle plus.

Christophe LARATTE
OpenFlyers manager

Options: RépondreCiter
Re: Décalage de 8 jours sur les dates
Envoyé par: motik ()
Date: mardi 19 février 2008 11:04:59

Merci, je vais regarder ça. Cependant je ne crois pas que php5 ait un comportement par défaut qui consiste à faire passer toutes les variables par référence. De ce point de vue-là il devrait se comporter comme php4 me semble-t-il.

J'avais bien fait des recherches sur le forum, mais je n'avais trouvé aucun problème du genre du mien. Il y a effectivement des problèmes spécifiques à l'installation chez Free, et c'est grâce au wiki que j'ai pu faire tourner OF (il a très bien marché pendant plusieurs mois).

Options: RépondreCiter


Seuls les utilisateurs enregistrés peuvent poster des messages dans ce forum.
This forum powered by Phorum.