BlogoText / blogotext-addons

Add-ons for BlogoText
https://github.com/BlogoText/blogotext
10 stars 6 forks source link

Bug lazyload après mise à jour BlogoText 3.7 #29

Closed MouTonLibre closed 7 years ago

MouTonLibre commented 7 years ago

Bonjour,

Je viens de faire la mise à jour de BlogoText et j'ai voulu installer le plugin lazyload. Mais lorsque je l'active j'ai une erreur qui apparaît : <b>Notice</b>: Use of undefined constant LIBXML_HTML_NOIMPLIED - assumed 'LIBXML_HTML_NOIMPLIED' in <b>/home/starsheep/public_html/blog/addons/lazyload/lazyload.php</b> on line <b>64</b><br /> <br /> <b>Notice</b>: Use of undefined constant LIBXML_HTML_NODEFDTD - assumed 'LIBXML_HTML_NODEFDTD' in <b>/home/starsheep/public_html/blog/addons/lazyload/lazyload.php</b> on line <b>64</b><br /> <br /> <b>Warning</b>: DOMDocument::loadHTML() expects parameter 2 to be long, string given in <b>/home/starsheep/public_html/blog/addons/lazyload/lazyload.php</b> on line <b>64</b><br /> <br />

Lors d'une installation vierge, je n'avais pas cette erreur pour information.

remrem commented 7 years ago

Je jette un coup d'oeil ASAP ;)

MouTonLibre commented 7 years ago

Merci ! Mais ce n'est pas non plus dramatique, c'est un addon. ;)

remrem commented 7 years ago

Je viens de jeter un coup d'oeil dans la doc de domdocument, il faut au moins PHP 5.4 avec Libxml 2.7.8.

Tu as quelle version de PHP et de Libxml ? (pour le voir tu peux créer un fichier php contenant <?php phpinfo(); ?> et en appelant ton fichier avec ton navigateur favoris.

Si c'est un bien problème de version et que tu ne peux pas mettre à jour ton serveur, je vais te trouver une solution ;)

MouTonLibre commented 7 years ago

Je suis sur un mutualisé qui propose donc PHP 5.6 et Libxml 2.7.6.

Bon ben c'est mort pour libxml du coup... :/

remrem commented 7 years ago

est-ce que tu peux essayer en remplaçant :

     $doc->loadHTML($art['bt_content'], LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD);

(vers la ligne 64) par

        try {
            $doc->loadHTML($art['bt_content'], LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD);
        } catch (Exception $e) {
            $fragment = $doc->createDocumentFragment();
            $fragment->appendXML($art['bt_content']);
            $doc->appendChild($fragment);
        }
MouTonLibre commented 7 years ago

Alors bonne nouvelle, ça ne bugue plus. Mais je n'ai pas l'impression que ça empêche le chargement des images non visibles...

MouTonLibre commented 7 years ago

Ah non je n'ai rien dit. L'erreur survient toujours.

remrem commented 7 years ago

ok, je vais continuer de chercher une solution, je pense avoir une piste, dés que j'ai le temps de tester ... ;)

MouTonLibre commented 7 years ago

Pas de soucis. :) Ce n'est pas indispensable. Merci.

remrem commented 7 years ago

Peux tu essayer de remplacer ton fichier lazyload.php par celui là ?

B4rb3rouss commented 7 years ago

Salut, j'ai aussi le bug, php7.0, libxml2.9.4 .

J'ai testé avec ton nouveau fichier, et il y a toujours une erreur mais pas au même endroit :


Warning: DOMDocument::loadHTML(): htmlParseEntityRef: expecting ';' in Entity, line: 8 in /htdocs/yeuxdelibad.net/Blog/addons/lazyload/lazyload.php on line 56
remrem commented 7 years ago

Bon, faut trouver autre chose que libxml ... @B4rb3rouss , je ne crois pas que ça soit lié ... sans doute une problème de formatage

remrem commented 7 years ago

nouveau test : https://gist.github.com/remrem/2eecfe1cf12f3576b58a623659d9520b

Pour @Starsheep08 , rien de changé, toujours le même test.

Pour @B4rb3rouss , d’après google, ton erreur est sans doute lié à un mauvais formatage dans les url (lien, image...) par exemple : <a href="?toto=1&titi=2"> devrait être écrit <a href="?toto=1&amp;titi=2">

EDIT 2017/04/18 13:50
@B4rb3rouss , testé avec plusieurs formes d'URL (img et liens), l'erreur n'est plus affichée et le script s'exécute normalement, si tu peux me confirmer ;)
@Starsheep08 , testé avec une vielle version de libxml, ça à l'air de faire la farce, si tu peux me confirmer ;)

MouTonLibre commented 7 years ago

Coucou !

Bon ben je viens d'essayer avec le dernier fichier, et j'ai toujours exactement le même problème. :/

remrem commented 7 years ago

Je pense que c'est le try {} catch {}, je te mets une version avec un autre test, et une version sans test (mais forcé)

remrem commented 7 years ago

la version forcée https://gist.github.com/remrem/e66994fad594970cf29b9bbf6497385a
la version avec un nouveau test sur la version de libxml https://gist.github.com/remrem/2eecfe1cf12f3576b58a623659d9520b

Si la version forcée ne corrige pas le tir... on avisera...

MouTonLibre commented 7 years ago

\o/ Pour moi c'est bon avec le nouveau test sur libxml. Bien joué remrem, et merci beaucoup ! :)

remrem commented 7 years ago

;) Merci d'avoir joué le jeu des (nombreux) tests ;) Je pousse un PR

remrem commented 7 years ago

je vais attendre que @B4rb3rouss confirme le fix pour son problème (voir le PR #30 )

B4rb3rouss commented 7 years ago

C'est tout bon pour moi, bien joué ! :)

remrem commented 7 years ago

cool, je merge le PR et ferme cette issue ;)