2010-03-30 4 views
0

J'essaye d'installer HTML Purifier http://htmlpurifier.org/ mais j'obtiens l'erreur suivante Undefined variable: dirty_html. Je me demandais comment puis-je résoudre ce problème?PHP & HTML Erreur purificateur: Undefined variable: dirty_html

Voici le code PHP.

require_once '../../htmlpurifier/library/HTMLPurifier.auto.php'; 

$config = HTMLPurifier_Config::createDefault(); 
$config->set('Core.Encoding', 'UTF-8'); // replace with your encoding 
$config->set('HTML.Doctype', 'XHTML 1.0 Strict'); // replace with your doctype 
$purifier = new HTMLPurifier($config); 

$clean_html = $purifier->purify($dirty_html); 

Voici ma forme html.

<form method="post" action="index.php"> 
    <fieldset> 
     <ul> 
      <li><label for="about-me">About Me: </label> 
      <textarea rows="8" cols="60" name="about-me" id="about-me"></textarea></li> 

      <li><label for="my-interests">My Interests: </label> 
      <textarea rows="8" cols="60" name="interests" id="interests"></textarea></li> 

      <li><input type="submit" name="submit" value="Save Changes" class="save-button" /> 
     </ul> 
    </fieldset> 

</form> 

Répondre

1

dirty_html de $ devrait être le code HTML de la page Web

On dirait que vous ajoutez un DOCTYPE et d'encodage à votre HTML, donc je suppose que vous l'utiliser comme ceci:

$dirty_html =<<<DIRTYHTML 
<form method="post" action="index.php"> 
    <fieldset> 
     <ul> 
      <li><label for="about-me">About Me: </label> 
      <textarea rows="8" cols="60" name="about-me" id="about-me"></textarea></li> 

      <li><label for="my-interests">My Interests: </label> 
      <textarea rows="8" cols="60" name="interests" id="interests"></textarea></li> 

      <li><input type="submit" name="submit" value="Save Changes" class="save-button" /> 
     </ul> 
    </fieldset> 

</form> 
DIRTYHTML; 

$clean_html = $purifier->purify($dirty_html); 
echo $clean_html; 
+0

html sur la page Web, ce que mon formulaire soumet? – TaG

3

Ce que vous voulez purifier n'est pas clair. Certains $ _POST vars? Vous obtenez cette erreur car vous n'avez pas défini $dirty_html. Par exemple, si vous souhaitez purifier le champ about_me, utilisez

$clean_html = $purifier->purify($_POST['about_me']);