[RESOLU] Pluxml 4.3.1 > bug > "cannot yet handle MBCS"

AguraAgura Member
janvier 2010 modifié dans Bogues
Bonjour,

Tout d'abord bonne année et meilleurs voeux.

Je viens d'installer la dernière version de Pluxml brute de dézipage chez Free.fr et j'obtiens un message d'erreur : "Warning: cannot yet handle MBCS in html_entity_decode()! in /mnt/162/sdc/b/1/foo/core/lib/class.plx.utils.php on line 408"

J'ai tenté de rajouter un fichier .htaccess avec la ligne : "AddType application/x-httpd-php5 .php" pour forcer l'activation du PHP5 chez Free.fr, cela ne change rien.

MODIF :
Finalement, la solution chez Free.fr se situe bien au niveau du fichier .htaccess, mais avec la ligne : "php 1" et non celle que j'avais imaginée et qui marche chez Online.net.

Je vous remercie.
Agura

Réponses

  • Merci Agura pour ton auto-dépannage^^
  • TumulteTumulte Member
    janvier 2010 modifié
    Vous trouverez aussi cette erreur sur online.net (c'est Iliad dans les deux cas...donc on retrouve souvent des erreurs communes!). Sur Online le PHP est activé mais dans la version 4, il faut donc bisouiller pour passer à la 5 (un comble...)

    En revanche la bonne ligne à mettre dans le .htaccess est :

    AddType application/x-httpd-php5 .php

    Ensuite il faut mettre le .htaccess dans la racine (c'est à dire "/" juste avant "www").

    Vous trouvez cette solution dans les pages de support rubrique "PHP"
  • StéphaneStéphane Member, Former PluXml Project Manager
    Merci Tumulte
    J'ai rajouter la directive pour Online.net dans le wiki

    Consultant PluXml

    Ancien responsable et développeur de PluXml (2010 à 2018)

  • Hello,

    Merci pour ce post salvateur! (1and1, blog : http://www.vairet.com/blog/leridan ).

    Je viens de rajouter 2 lignes à la page du wiki pour mieux aiguiller ceux qui tombent sur ce type d'erreur :
    http://wiki.pluxml.org/?page=Activer+PHP5+sur+votre+h%C3%A9bergeur

    Lignes rajoutées :
    Cela peut occasionner des messages d'erreur de type :
    "Warning: cannot yet handle MBCS in html_entity_decode()! in /.../core/lib/class.plx.utils.php on line 408"

    Peut-être pourrait-on signaler ce problème directement dans la page d'installation? Ou une rubrique "Problèmes"?
  • logostenlogosten Member
    janvier 2010 modifié
    Merci pour vos solutions, cependant je suis en php4 et je ne suis pas chez free... Quelle rustine pourriez-vous suggérer ? J'en ai essayé plusieurs mais sans succès. J'aimerais bien utiliser ce CMS ultrasimple.
    Merci
  • StéphaneStéphane Member, Former PluXml Project Manager
    Bonjour logosten

    Peux-tu nous donner le nom de ton hébergeur stp.

    Consultant PluXml

    Ancien responsable et développeur de PluXml (2010 à 2018)

  • logostenlogosten Member
    janvier 2010 modifié
    Merci de ta réponse rapide,
    je n'en ai pas mais mon serveur, c'est le serveur de ma boîte, étant en production je ne peux le passer de PHP4 en PHP5 pour l'instant.
    Jean
  • StéphaneStéphane Member, Former PluXml Project Manager
    Dans ce cas je peux te conseiller d'utiliser des solutions qui peuvent être installés sur une clé usb de manière à avoir ton serveur en local sur ta clé usb afin de tester PluXml (aucun fichier installé sur le pc)
    De tête, mais il y en a d'autres
    - UwAmp : http://www.uwamp.com/
    - Easyphp : http://www.easyphp.org/

    Consultant PluXml

    Ancien responsable et développeur de PluXml (2010 à 2018)

  • En fait je voulais faire une base de connaissances et le XML était un atout. L'appli est installée en intranet. Je suis vraiment séduit pour ce concept de blog XML mais je ne peux pas passer trop de temps à écrire une rustine. Dommage!
  • StéphaneStéphane Member, Former PluXml Project Manager
    Je peux te proposer la "rustine" pour faire tourner PluXml en PHP4 et éviter le message d'erreur "cannot yet handle MBCS"

    Consultant PluXml

    Ancien responsable et développeur de PluXml (2010 à 2018)

  • Oui ça pourrait être bien, ça dépend des conditions...
  • StéphaneStéphane Member, Former PluXml Project Manager
    Ce qui faut modifier dans les fichiers de PluXml

    1) remplacer la fonction actuelle strRevCheck dans core/lib/class.plx.utils.php par
    function strRevCheck($str) {
    
    return strtr($str, array_flip(get_html_translation_table(HTML_SPECIALCHARS, ENT_QUOTES)));
    }
    
    2) dans core/lib/class.plx.show.php, dans la fonction lastComList remplacer
    $row = str_replace('#com_content('.$capture[1].')',plxUtils::strCheck(plxUtils::strCut(plxUtils::strRevCheck($content),$capture[1]),$row));
    
    par
    $row = str_replace('#com_content('.$capture[1].')',plxUtils::strCut(plxUtils::strRevCheck($content),$capture[1]),$row);
    
    3) dans core/admin/commentaire_online.php et core/admin/commentaire_offline.php, remplacer
    $content = plxUtils::strCheck(plxUtils::strCut(plxUtils::strRevCheck($plxAdmin->plxRecord_coms->f('content')),70));
    
    par
    $content = plxUtils::strCut(plxUtils::strRevCheck($plxAdmin->plxRecord_coms->f('content')),70);
    
    4) dans core/admin/commentaire_new.php, remplacer
    <?php plxUtils::printArea('content',plxUtils::strCheck($content), 60, 7); ?>
    
    par
    <?php plxUtils::printArea('content',$content, 60, 7); ?>
    
    Avec ça, ça devrait aller

    Consultant PluXml

    Ancien responsable et développeur de PluXml (2010 à 2018)

  • Merci Stéphane, ça fonctionne, bravo pour votre réactivité et votre réponse très complète.
    Bonne journée
    Jean
Connectez-vous ou Inscrivez-vous pour répondre.