PHP &

2 Cevap php

Ben HTML Arıtma http://htmlpurifier.org/ yüklemeye çalışıyorum ama aşağıdaki hata Tanımsız değişken olsun: dirty_html. Ben bu sorunu nasıl düzeltebilirim merak ediyorum?

Burada PHP kodudur.

 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);

İşte benim html formudur.

<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>

2 Cevap

Bu arındırmak istediğini net değil. Bazı $ _POST vars? Eğer tanımlı değil çünkü o hata alıyorum $dirty_html. Eğer about_me alanı arındırmak istiyorsanız Örneğin, kullanmak

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

$ Dirty_html web sayfasının HTML olmalı

Eğer HTML bir DOCTYPE ve Kodlama ekliyoruz gibi bu yüzden bu gibi kullanmak farz görünüyor:

$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;