Le 05/12/2009 10:32, Sylvain Nogues a écrit :
Merci pour ta réponse rapide.je complète mes questions : la version 0.63.3 reste-t-elle compatible avec php 4, comme l'indiquent la doc en ligne et la doc docs/INSTALL ?C'était censé être le cas... Mais n'ayant plus de php4 depuis bien longtemps, je ne teste pas avec cette version.Je suis personnellement en 4.3.11-2.8, et j'ai les soucis suivants : - les modifications de préférences ne sont pas prises en compteLà, il faudrait un peu plus d'infosen utilisant le formulaire "preferences.php" (après installation), et en modifiant des valeurs des champs, aucune modification n'est apportée à la table, et aucun message d'erreur n'est affiché. Je n'ai pas de logs de mysql, et pas plus d'info pour l'instant, modification par phpmyadmin fonctionne dans l'urgence...
Hum... Étrange. La seule solution que je voie ici, c'est de faire une gros echo sur les requêtes exécutées. Dans le fichier preferences.php, aux environs de la ligne 201, il y a : $requete = "UPDATE ".PREFIX_DB."preferences set val_pref=".$DB->qstr($valeur)." WHERE nom_pref=".$DB->qstr($champ).";\n"; Il faudrait, juste après ces lignes, faire un : echo $requete; Voir ensuite les lignes qui correspondent à tes modifications, et voir si l'une d'entre elles semble être erronée. Essaies-tu dans l'une des entrées, de mettre des caractères qui ne sont pas alpha-numériques ? Si c'est le cas, prêtes particulièrement attention aux requêtes renvoyées our ces entrées.
- impossible d'envoyer de mails : "Fatal error: Call to undefined function: stripos() in ..../includes/functions.inc.php on line 233En effet, stripos n'est disponible qu'en php5. J'ai utilisé cette fonction pour supprimer les appels eregi (les fonctions posix étant dépréciées en php 5.3), sans avoir prêté attention à la compatibilité php4. L'autre alternative serait d'avoir recours à preg_match, mais j'ai fait le choix de stripos pour des questions de performances (donc, on peut retrouver le support de php de ce côté « sans trop de problèmes »).euh... créer une fonction stripos par exemple ? genre http://php.net/manual/fr/function.stripos.php Yet another stripos for php4 alternative: <?php function stripos($haystack, $needle){ return strpos($haystack, stristr( $haystack, $needle )); } $strTest = "The brown fox jumped over the Fence"; echo stripos($strTest, 'fence');//30 ?> Où la mettre pour que ça fonctionne sans tout casser ?
Ha, pas bête, je n'avais pas été lire les commentaires ; on peut essayer ça. Je pense que ça aurait sa place dans 'includes/functions.inc.php'
- et les problèmes d'install mentionnés ci-dessous.Les soucis de magic_quotes ne sont pas spécifiques à php4... Changer la doc pour ça ? Oui, pourquoi pas, mais il faut tout d'abord s'assurer que ce n'est pas un "bogue" de Galette.j'ai pas mal fouillé pour règler ce bug : j'ai fini par faire afficher le message d'erreur sql (dans insstall/index.php), c'était une erreur 1064, j'ai essayé de passer en magic quotes off, ça a fonctionné. C'est peut-être simplement un problème de quotes dans le fichier sql.
Pourrai-tu me dire vers quelle ligne ça foirait ? J'ai regardé un peu le fichier sql, rien ne m'a paru anormal.
Php5 est-il finalement obligatoire ?Dans les faits, oui, et depuis la 0.63.1 (mai 2009), date à laquelle les fonctions stripos ont fait leur apparition dans le code. La question étant de savoir si le support php4 est toujours d'actualité (personne n'avait remarqué que la compatibilité était brisée depuis quelques mois déjà).euhh.. pour moi, oui... ;) encore quelques semaines au moins. C'est vrai qu'il y a longtemps que je n'avais pas installé galette (outil magnifique, en passant...).
Sachant que la 0.63.4 ne sortira pas officiellement tout de suite.
À savoir : ça ne pourra être rétabli que dans la prochaine 0.63.4 (qui aura besoin d'être bien testée suite à la mise à jour de AdoDB) ; et je ne pourrai pas tester la compatibilité php4 moi même.Je peux tester si tu le souhaites.
Ha ben oui :-) Je n'ai pas encore d'archive en ligne, tout est sur le SVN. Soit tu prend cette version (branche galette-0-63-bugfix), soit je mets une archive en ligne rapidement (qui permettra à d'autres de tester facilement aussi).
Merci beaucoup, Sylvain
Johan
Attachment:
signature.asc
Description: OpenPGP digital signature