Récemment
-
Erreur module block_cart en php8.2 mais pas en php7.4
Bugs & Améliorations14 -
Bug page de commande
Bugs & Améliorations4 -
Passage au Webp qui n'a pas fonctionné
Bugs & Améliorations1 -
Nouveautés possibles ?
Nouvelles fonctionnalités2 -
bug installation bdd
Questions relatives à l'installation/upgrade26 -
Configuration de wamp compatible presta.1.6.1.24 et PhenixSuite 1.6.2.25
Discussion générale61 -
Responsive sur liste des produits dans les commandes
Bugs & Améliorations2 -
affichage incorrect de produit personnalisé au panier
Bugs & Améliorations3 -
Erreur PHP à l'installation du module cedconnector
Bugs & Améliorations2 -
Problème calcul HT
Bugs & Améliorations18 -
MAJ .htaccess Apache 2.4 et 2.2
Nouvelles fonctionnalités5 -
Erreur SQL 1.6.2.23 -> 1.6.2.25
Questions relatives à l'installation/upgrade2 -
Calcul règle panier
Bugs & Améliorations1 -
Images sur les BL ne s'affichent pas
Bugs & Améliorations13 -
SQL [WARNING] MAJ 1.6.2.19 vers 1.6.2.25
Questions relatives à l'installation/upgrade3 -
Erreur - Le template d'e-mail suivant n'existe pas : /mails/fr/password_code.html [RÉSOLU]
Bugs & Améliorations3 -
Soucis ps_checkout (admin et front)
Bugs & Améliorations9 -
Erreur SQL sur le Liens Modules et Service après upgrade a 1.6.2.25
Questions relatives à l'installation/upgrade3 -
Erreur SQL sur la requête The used table type doesn't support FULLTEXT indexes
Questions relatives à l'installation/upgrade3 -
Maj de 1.6.1.20 rien ne se passe
Questions relatives à l'installation/upgrade2
1.6.2.19 - Erreur sur le module Editeur de page d'accueil
-
Phenix version 1.6.2.19/php8.1
J'ai une erreur sur le module "Editeur de page d'accueil v10 - par PrestaShop modified by Eolia"
(voir l'erreur plus bas)Contexte:
Une fois installé, j'apporte des modifications sur sa page de paramètre et lorsque j'enregistre cela fait une erreur.Solution apportée:
L'erreur rencontrée est une "TypeError" qui se produit dans le fichier /home/vabw9579/phenix.thierrylaval.dev/modules/editorial/EditorialClass.php à la ligne 80.
J'ai modifié la méthode copyFromPost de la classe EditorialClass. Le problème se situe à l'intérieur de cette méthode où vous utilisez la fonction key_exists pour vérifier si une clé existe dans un tableau. Cependant, dans votre cas, vous utilisez key_exists de manière incorrecte car il attend un tableau en deuxième argument, mais vous lui passez la classe EditorialClass.
Pour faire simple, j'ai remplacé la ligne 80
if (key_exists($key, $this) && $key != 'id_'.$this->table) $this->{$key} = $value;
par:
if (property_exists($this, $key) && $key != 'id_'.$this->table) $this->{$key} = $value;
Cela fonctionne. Suis-je ok avec cette modifications ?
Erreur pour info:
Fatal error: Uncaught TypeError: key_exists(): Argument #2 ($array) must be of type array, EditorialClass given in /home/vabw9579/phenix.prestashop.dev/modules/editorial/EditorialClass.php:80 Stack trace: #0 /home/vabw9579/phenix.prestashop.dev/modules/editorial/EditorialClass.php(80): key_exists() #1 /home/vabw9579/phenix.prestashop.dev/modules/editorial/editorial.php(267): EditorialClass->copyFromPost() #2 /home/vabw9579/phenix.prestashop.dev/modules/editorial/editorial.php(218): Editorial->postProcess() #3 /home/vabw9579/phenix.prestashop.dev/controllers/admin/AdminModulesController.php(1125): Editorial->getContent() #4 /home/vabw9579/phenix.prestashop.dev/controllers/admin/AdminModulesController.php(1461): AdminModulesControllerCore->postProcessCallback() #5 /home/vabw9579/phenix.prestashop.dev/classes/controller/Controller.php(201): AdminModulesControllerCore->postProcess() #6 /home/vabw9579/phenix.prestashop.dev/classes/Dispatcher.php(405): ControllerCore->run() #7 /home/vabw9579/phenix.prestashop.dev/xxxxxxxxxxxxx/index.php(79): DispatcherCore->dispatch() #8 {main} thrown in /home/vabw9579/phenix.prestashop.dev/modules/editorial/EditorialClass.php on line 80
[PrestaShop] Fatal error in module file :/home/vabw9579/phenix.prestashop.dev/modules/editorial/EditorialClass.php:
Uncaught TypeError: key_exists(): Argument #2 ($array) must be of type array, EditorialClass given in /home/vabw9579/phenix.prestashop.dev/modules/editorial/EditorialClass.php:80 Stack trace: #0 /home/vabw9579/phenix.prestashop.dev/modules/editorial/EditorialClass.php(80): key_exists() #1 /home/vabw9579/phenix.prestashop.dev/modules/editorial/editorial.php(267): EditorialClass->copyFromPost() #2 /home/vabw9579/phenix.prestashop.dev/modules/editorial/editorial.php(218): Editorial->postProcess() #3 /home/vabw9579/phenix.prestashop.dev/controllers/admin/AdminModulesController.php(1125): Editorial->getContent() #4 /home/vabw9579/phenix.prestashop.dev/controllers/admin/AdminModulesController.php(1461): AdminModulesControllerCore->postProcessCallback() #5 /home/vabw9579/phenix.prestashop.devclasses/controller/Controller.php(201): AdminModulesControllerCore->postProcess() #6 /home/vabw9579/phenix.prestashop.dev/classes/Dispatcher.php(405): ControllerCore->run() #7 /home/vabw9579/phenix.prestashop.dev/adminxxxxxxxxxxx/index.php(79): DispatcherCore->dispatch() #8 {main} thrown
-
Vous avez tout à fait raison, cette ligne m'a échappé lors du contrôle de conformité PHP 8.
Avant PHP7.4 ce code fonctionnait (warning au lieu de fatal)
Je n'ai pas encore contrôlé tous les cas de figure dans les modules natifs.Merci pour votre retour ce sera appliqué dans la v20 ;)
-
En gros, les fichiers qui ont la licence phenixsuite en en-tête ont été contrôlés en conformité PHP 8.2 mini, les autres font partie de la TODO List^^
-
@eolia a dit dans 1.6.2.19 - Erreur sur le module Editeur de page d'accueil :
...
Je me permets de rajouter que c'est moi qui remercie pour cet excellent travail sur cette version de Prestashop Phenix. Et c'est un plaisir de chercher des solutions à proposer.
Bravo et merci pour cette mise à disposition de Phenix.