berninoel42 Posted January 30, 2019 Share Posted January 30, 2019 (edited) Bonjour, J'ai modifié ma version de php ( passé de 5.6 à 7.2 ) et cela m'a provoqué une erreur ( ci dessous ) que je n'arrive pas à la résoudre malgré mes recherches sur le forum. Avez vous une idée et même des solutions si possible ? cela vous est il déjà arrivé peut être? Pour info, Il me semble que ma version de prestashop est 1.6.1.4. et je ne peux pas revenir sur une version 5.6 de php. merci d'avance Quote Fatal error: Uncaught Error: Class 'Rijndael' not found in /homepages/24/d610266730/htdocs/boutique/classes/Cookie.php:84 Stack trace: #0 /homepages/24/d610266730/htdocs/boutique/config/config.inc.php(163): CookieCore->__construct('psAdmin', '', 1550584880) #1 /homepages/24/d610266730/htdocs/boutique/admin-cocci/index.php(36): require('/homepages/24/d...') #2 {main} thrown in /homepages/24/d610266730/htdocs/boutique/classes/Cookie.php on line 84 Edited January 30, 2019 by berninoel42 (see edit history) Link to comment Share on other sites More sharing options...
doekia Posted January 30, 2019 Share Posted January 30, 2019 Si tu ne peux pas revenir en php5.6, alors tu ne peux pas utiliser prestashop 1.6.1.4 D'ailleurs pour information, aucune version de prestashop ne fonctionne sur php7.2 Link to comment Share on other sites More sharing options...
Eolia Posted January 30, 2019 Share Posted January 30, 2019 C'est con pour une agence de planter une boutique Link to comment Share on other sites More sharing options...
berninoel42 Posted January 30, 2019 Author Share Posted January 30, 2019 (edited) 4 minutes ago, doekia said: Si tu ne peux pas revenir en php5.6, alors tu ne peux pas utiliser prestashop 1.6.1.4 D'ailleurs pour information, aucune version de prestashop ne fonctionne sur php7.2 Est ce qu'elle fonctionne en 7.0 ? et à partir de quelle version de prestashop on peut utiliser le 7.0 si on peut l'utiliser...? et merci Doekia Edited January 30, 2019 by berninoel42 (see edit history) Link to comment Share on other sites More sharing options...
berninoel42 Posted January 30, 2019 Author Share Posted January 30, 2019 1 minute ago, Eolia said: C'est con pour une agence de planter une boutique Je ne suis pas une agence c'est juste un vieux compte que j'utilise... pour le forum. Merci de t'en soucier... Link to comment Share on other sites More sharing options...
Eolia Posted January 30, 2019 Share Posted January 30, 2019 il y a 9 minutes, berninoel42 a dit : Est ce qu'elle fonctionne en 7.0 ? et à partir de quelle version de prestashop on peut utiliser le 7.0 si on peut l'utiliser...? et merci Doekia 7.1 maxi à partir de la 1.6.1.18 ou alors aller modifier à la mano les quelques 50 lignes concernées un peu partout dans le code Link to comment Share on other sites More sharing options...
Eolia Posted January 30, 2019 Share Posted January 30, 2019 Mais bon, par rapport à ton message d'erreur la classe Rijndael.php existe en 1.6.1.4 donc je pense plutot à un souci de cache pour commencer. Il faut supprimer le fichier /cache/class_index.php pour réinitialiser le cache de l'autoloader Link to comment Share on other sites More sharing options...
berninoel42 Posted January 30, 2019 Author Share Posted January 30, 2019 Malheureusement ce n'est pas le cache. J'avais essayé ( et dans le doute j'ai ré-essayé ) mais rien à faire . J'ai toujours la même erreur. Aurais tu un liens qui m'indiquerais les lignes de codes à modifier? Merci. Link to comment Share on other sites More sharing options...
Eolia Posted January 30, 2019 Share Posted January 30, 2019 Déjà contrôler que la classe Rijndael.php existe bien. Ensuite il n'y a pas tout dans un lien, il faut activer le mode debug pour voir ce qui pète. Le principal se trouve ici : https://github.com/PrestaShop/PrestaShop/pull/3588/files Et vos modules ne sont peut-être pas tous compatibles également. Link to comment Share on other sites More sharing options...
eleazar Posted January 30, 2019 Share Posted January 30, 2019 vor 33 Minuten schrieb Eolia: Mais bon, par rapport à ton message d'erreur la classe Rijndael.php existe en 1.6.1.4 donc je pense plutot à un souci de cache pour commencer. Il faut supprimer le fichier /cache/class_index.php pour réinitialiser le cache de l'autoloader Malheureusement non, Eolia, la classe Rijndael de 1.6 ne fonctionne pas avec PHP 7.2 Pour empêcher PrestaShop de passer automatiquement à Blowfish, elle doit être réécrite et étendue. J'ai écrit un tutoriel qui vous permet même d'exécuter PrestaShop 1.5 avec PHP 7.2. A l'origine, j'avais posté le fichier Zip contenu dans le forum français. Comme ce n'était pas souhaité, je l'ai effacé à nouveau et l'ai publié uniquement dans le forum allemand et anglais. Certaines des modifications sont également nécessaires pour la 1.6, en particulier le fichier Rijndael.php inclus dans le fichier zip. Voici le link : https://www.prestashop.com/forums/topic/953386-downloadtutorial-make-prestashop-156-run-with-php-72/?do=findComment&comment=3049484 vor 7 Minuten schrieb Eolia: Le principal se trouve ici : https://github.com/PrestaShop/PrestaShop/pull/3588/files Le link Github ne contient pas tout, mais le plus important. Link to comment Share on other sites More sharing options...
Eolia Posted January 30, 2019 Share Posted January 30, 2019 Non la Rijndael ne doit pas etre patchée avec Blowfish mais avec open_ssl^^ Il manque la classe webservice dans ton zip Link to comment Share on other sites More sharing options...
eleazar Posted January 30, 2019 Share Posted January 30, 2019 vor 6 Minuten schrieb Eolia: Non la Rijndael ne doit pas etre patchée avec Blowfish mais avec open_ssl Tu ne m'as évidemment pas compris, parce que c'est exactement ce que j'ai fait. Link to comment Share on other sites More sharing options...
eleazar Posted January 30, 2019 Share Posted January 30, 2019 vor 18 Minuten schrieb Eolia: Il manque la classe webservice dans ton zip Je n'utilise pas le webservice, j'ai peut-être oublié quelque chose. Que veux-tu donc dire exactement ? Link to comment Share on other sites More sharing options...
Eolia Posted January 30, 2019 Share Posted January 30, 2019 compare le fichier WebserviceOutputBuilder.php d'une 1.6.1.23 et celles des versions inférieures à 1.1.18 Link to comment Share on other sites More sharing options...
eleazar Posted January 30, 2019 Share Posted January 30, 2019 Et qu'est-ce qui ne fonctionnera pas sous PHP 7.2 si le webservice est activé ? Link to comment Share on other sites More sharing options...
Eolia Posted January 30, 2019 Share Posted January 30, 2019 [Sun Jan 27 22:06:09.213611 2019] [fcgid:warn] [pid 3710] [client 52.19.229.62:50360] mod_fcgid: stderr: [PHP Notice #8] Array to string conversion (/var/www/clients/client1/web1/web/classes/webservice/WebserviceOutputBuilder.php, line 542) [Sun Jan 27 22:06:09.213691 2019] [fcgid:warn] [pid 3710] [client 52.19.229.62:50360] mod_fcgid: stderr: [PHP Notice #8] Undefined property: Order::$Array (/var/www/clients/client1/web1/web/classes/webservice/WebserviceOutputBuilder.php, line 542) [Sun Jan 27 22:06:09.213703 2019] [fcgid:warn] [pid 3710] [client 52.19.229.62:50360] mod_fcgid: stderr: PHP Fatal error: Uncaught Error: Function name must be a string in /var/www/clients/client1/web1/web/classes/webservice/WebserviceOutputBuilder.php:542 Link to comment Share on other sites More sharing options...
eleazar Posted January 30, 2019 Share Posted January 30, 2019 D'accord, je comprends ! Vous devez utiliser {...} comme dans les arguments Tools Validate::. Modifier la classe /classes/webservice/WebserviceOutputBuilder.php ligne 542 de field['value'] = $object->$field['getter']]() ; à field['value'] = $object->{$field['getter']}() ; Un problème similaire est rencontré dans PrestaShop 1.6.1.4 dans la classe /classes/webservice/WebserviceRequest.php, ligne 1431. Encore une fois vous devez faire cela avec des brackets supplémentaires : $object->{$fieldProperties['setter']}((string)$attributes->$fieldName); Ou bien on peut utiliser la programmation en cours : $setter = $fieldProperties['setter']; $object->$setter((string)$attributes->$fieldName); Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now