jean-io / moncycle.app

Application de suivi de cycle menstruel pour les méthodes naturelles de régulation de naissance.
https://www.moncycle.app
Other
18 stars 3 forks source link

PHP Fatal error: Constant expression contains invalid operations #32

Closed Limezy closed 6 months ago

Limezy commented 6 months ago

J'ai tenté d'installer la dernière version du code sur mon serveur et j'obtiens une fatal error php :

2024/02/19 06:56:47 [error] 3903328#3903328: *22228 FastCGI sent in stderr: "PHP message: PHP Fatal error:  Constant expression contains invalid operations in /var/www/moncycle/lib/db.php on line 23" while reading response header from upstream, client: XX.XXX.XXX.XXX, server: monserveur.fr, request: "POST /api/authentification HTTP/2.0", upstream: "fastcgi://unix:/var/run/php/php8.2-fpm-moncycle.sock:", host: "moncycle.monserveur.fr", referrer: "https://moncycle.monserveur.fr/connexion"

Cela semble provenir de la ligne 23 de db.php, ligne modifiée lors du commit "static power" pour ajouter le type "static" https://github.com/jean-io/moncycle.app/blob/66247bf4552d4e688fb3756560f77743865d5875/www_data/lib/db.php#L23

Peut-être que le fichier db.php est incompatible avec ma version de php ? (j'utilise 8.2, la version par défaut sur Yunohost 11.2.10)

Limezy commented 6 months ago

https://github.com/Limezy/moncycle_ynh/blob/v9.0.5/sources/patches/main-02-static.patch

L'application du patch ci-dessus 👆 résout le problème sur mon serveur de test, toujours avec php8.2

jean-io commented 6 months ago

Tu es sur d'être sur le dernier commit? Il y a bien eu un bug corrigé sur le commit d'après.

Limezy commented 6 months ago

J'installe la source https://github.com/jean-io/moncycle.app/archive/ee19dce2c74ff6e948fae98319cd00eda6ce4117.zip

Limezy commented 6 months ago

Sur le dernier commit j'ai quand même dû patcher parce que j'avais la même fatal error

jean-io commented 6 months ago

Je pense que retirer le mot clé static de la ligne 23 devrait corriger. Pour ma part je suis en PHP 8.3 https://github.com/jean-io/moncycle.app/blob/2eaf8d5765423276f2f16816fb62218f6b311555/www_data/lib/db.php#L23

En tout cas je n'arrive pas à reproduire, je veux bien que tu tests cette solution stp.

Pour info, une branche stable a été créer pour éviter de se retrouver avec des commits non stable.

Limezy commented 6 months ago

Pas de problème je vais tenter. Je vais aussi passer sous php8.3 si c'est ce qui est utilisé sur moncycle.app. Je reviens vers toi ici selon le résultat.

Limezy commented 6 months ago

php8.3 résout 100% le problème, même sans enlever le "static" de la ligne 23 ! Merci pour l'aide

jean-io commented 6 months ago

Top. Il faut ajouter l'info sur le readme du projet.