2010-07-20 10 views
0

Utilisation de la dernière version de HTMLPurifier avec les configurations par défaut.HTMLPurifier décède lors de l'exécution du code suivant

Le code suivant provoquera la page blanche blanche de oh-si-belle dans PHP. Est-ce que je manque quelque chose? Même si je place HTML.TidyLevel à light ou none il casse toujours. Voici un journal partiel des erreurs jetées en essayant de purifier le code ci-dessous: http://pastie.org/private/13f0htscq0v8bhhlt7dpg

Pour référence, voici le code associé j'utilise pour le faire:

$config = new HTMLPurifier_Config(new HTMLPurifier_ConfigSchema()); 
$config->set('HTML.TidyLevel', 'light'); // breaks with any level, even 'none' 
self::$pure = new HTMLPurifier($config); 
self::$pure->purify($str); // $str contains the code below 

Et, enfin, la code incriminé:

<code> 
<style type="text/css"> 
.block { 
    position: relative; 
} 

.block h2 a span { 
    position: absolute; 
    top: 0; 
    left: 0; 
    width: 100%; 
    height: 100%; 
    outline: 1px dashed #000; 
} 
</style> 

<div class="block"> 
<h2><a href="#"><span></span>Title of block</a></h2> 
<p>This entire block is clickable</p> 
<ul> 
    <li>Use</li> 
    <li>Any</li> 
    <li>Markup you like</li> 
</ul> 
<div>Even more divs!</div> 
<p>without worrying about whether the element is allowed to be a child of an anchor</p> 
</div> 
</code> 
+0

Page blanche vierge: une erreur fatale dans vos journaux d'erreurs peut-être? – Wrikken

+0

Oui: http://pastie.org/private/13f0htscq0v8bhhlt7dpg Ce qui m'apparaît étrange est que * semble * être lié au code ci-dessus. 99% du temps, cela fonctionne comme prévu. – Kyle

Répondre

0

Supprimez votre répertoire htmlpurifier et installez une nouvelle copie à partir de l'archive tar.