Bonjour,
j'ai commencé à travailler sur une MS 2.2 pour la rendre compatible avec php5.4 cela deviens urgent.
J'ai fais a peu prés la compatibilité avec 5.3 remplacement des ereg et eregi.
Je m'attaque au problème des textes accentuées qui disparaissent du backoffice à cause des htmlentities qui sont gérées différemment en php5.4.
Ma priorité va au fichier orders.php du backoffice afin que les commentaires des commandes soient affichés.
Est ce que vous avez une idée ou l'avez déjà fait ?
Note je veux bien regrouper les infos sur ce post et en faire un documen ressource pour le passage à PHP5.4.
Merci.
Bonjour,
Pour htmlentities, dans la doc php il est marqué :
Déjà j'ai vu dans le code de le page orders.php que l'on était en iso8859 il faut commencer par là non ? Je veux dire le passeer en utf8, mais il faut aussi le faire sur la base de donnée ?
Bonjour,
Vu qu'à partir d'Osc 2.3 tout passe en UTF-8, effectivement tu as intérêt à passer ton site en UTF-8.
Si tu commences par un fichier, il te faudra TOUT passer en UTF-8 sans BOM : répertoires catalog, admin et BDD.
Les pages regorgent d'include ... Ce n'est pas insurmontable mais c'est un peu long et répétitif.
J'ai passé mon site MS2 en UTF-8 et il est adapté au php 5.3 (pas encore fait le 5.4 vu que je risque de passer en Osc 2.3.3.4 si mes tests continuent à être bons).
Il y a de nombreux fils sur le passage en UTF-8, lis les et si tu as besoin d'aide, tu poses la ou les questions nécessaires que je regarde mes fichiers de ma MS2.
PS : il se peut que la FAQ de ton hébergeur te donne de précieuses infos, comme le https://www.infomaniak.com/support/faq/questions/eviter_les_problemes_de_caracteres_inhabituels_et_les_soucis_d_encodage_des_pages-1124.html?language=french par exemple.
Il y a un petit truc que je ne comprend pas
Travaillant sur un serveur avec PHP 5.4 Lorsque l'on exécute orders.php le contenu de la base de donnée accentué est correctement restitué.
lorsque l'on exécute orders.php?page=...=...&action=edit le contenu de la base de donnée qui comporte des accents n'est pas restitué.
Qu'est ce qui est à la base de cette différence de traitement ?
Merci.
Je me répond à moi même c'est à cause du htmlspecialchars dans admin/includes.functions/general.php en php 5.4 l'encoding est defini par défaut à UTF 8 (tout comme l'avait dit bonbec d'ailleurs )
Comme j'ai pas envie de passer tout le site en UTF 8 voila ce que je vais faire pour rendre compatible ma MS 2.2 avec php 5.4. Je mettrai à jour mon post. C'est pas du codage propre, je ne sais pas si cela vous servira mais cela m'aurait servit de le trouver :
mettre un serveur de dev en mode verbose et remplacer toutes les ereg functions par des preg functionslà où il y a des erreurs tout comme indiqué là :
https://github.com/osCommerce/oscommerce2/commit/79c601a7b3ee87943b92a5e6d77ce02480b49ffe
et
https://github.com/osCommerce/oscommerce2/commit/88d550f392d86c02d2fe16d0b93f1de8aa6a6770
fichier
admin/includes.functions/general.php
trouver (function tep_output_string : ligne environ 41 chez moi)
Salut,
J'avais le même problème d'affichage que toi dans admin suite au changement d'hébergeur de mon site. Je n'arrive pas à configurer la version de php sur le nouveau hébergeur.
J'avais déjà le site compatible 5.3 (modification des ereg....) et je me suis attaqué au passage en UTF8 :
* toutes les tables et la base complète
* tous les fichiers ouvert et enregistré en UTF8 s'il ne l'étaient pas
* modif du charset dans header
et ça a marché d'une coup simplement en rajoutant les mysql_set_charset('utf8', $$link); dans fonction/database
Je n'ai pas fait de changement dans les trim().... à moins de l'avoir fait au passage en 5.3
Ça semble bien marcher coté boutique publique sans passer à UTF8 (pour plus tard tant qu'à faire).
En tous cas, merci d'avoir soulever le problème qui m'a permis de faire les corrections.
bonjour à tous,
Désolé de déterrer ce vieux post,
@skieur disait :
Bonsoir,
Cela se trouve dans les fichiers de langue : catalog/includes/languages/french.php par exmple pour la langue française.
Bonjour et Merci @Bonbec,
Je m'atèle au passage php5
un peu en retard mais ...
je vais sûrement rencontrer des problèmes et je vais revenir vous appeler à l'aide.
Bonjour,
J'ai une version de osCommerce Online Merchant v2.2 RC1 W3C Valid FR et une version php 4.4.9 et je souhaite passer à une version de PHP >= à la 5.4.0.
J'ai vu sur mon hebergeur OVH que je pouvais choisir la version de PHP pas de pb jusque là.
J'ai aussi vu differents posts dans le forum qui parlaient de modifications à faire. Je n'ai pas tout compris car c'était plus des réponses à des problèmes rencontrés.
Quelqu'un peut il me guider et me donner les étapes à réaliser svp?
Merci d'avance.
Attention au version!!
OVH Dit
Il est conseillé d’utiliser les versions les plus récentes de PHP (5.6 ou 7.0) pour profiter des meilleures performances et d’une sécurité renforcée. L’usage des versions obsolètes de PHP (5.4, ou 5.5) est fortement déconseillé et vous expose à des possibles failles de sécurité.
PHP 7.0 (version par défaut, meilleures performances)
PHP 5.6 (supportée jusqu’au 31-12-2018)
PHP 5.5 (obsolète, non recommandée)
https://docs.ovh.com/fr/hosting/activer-loptimisation-php-sur-son-hebergement-mutualise-ovh/
Propulsé par Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)