1-) Öncelikler HTMLPrufier sınıfımızı indirelim
2-) HTMLPurifier.includes.php dosyasını açalım
require 'HTMLPurifier.php';
//require 'HTMLPurifier.php'; ile değiştirelim
3-) HTMLPurifier.php dosyasını açalım ve <? tagından sonra
require_once('HTMLPurifier.includes.php'); ekleyelim bu kadar şimdi ise test edelim bunun için de xss kodların bulunduğu bu siteden yararlanabiliriz.
Kütüphane yüklemek için $this->load->library('HTMLPurifier'); yada otomatik yüklemek için system/application/config/autoload.php dizininde $autoload['libraries'] =array('diğer kütüphaneler','HTMLPurifier'); ekleyebiliriz.
Şİmdi htmlprufier eklentisi oluşturalım:
<?php if (!defined('BASEPATH')) exit('No direct script access allowed');
function purify($dirty_html)
{
if (is_array($dirty_html))
{
foreach ($dirty_html as $key => $val)
{
$dirty_html[$key] = purify($val);
}
return $dirty_html;
}
if (trim($dirty_html) === '')
{
return $dirty_html;
}
require_once(APPPATH."plugins/htmlpurifier/HTMLPurifier.auto.php");
require_once(APPPATH."plugins/htmlpurifier/HTMLPurifier.func.php");
$config = HTMLPurifier_Config::createDefault();
$config->set('HTML', 'Doctype', 'XHTML 1.0 Strict');
return HTMLPurifier($dirty_html, $config);
}
?
Örnek Kod İse
public function save()
{
$this->load->plugin('htmlpurifier');
$clean_html = purify($this->input->post('html_content', TRUE));
$this->content_model->save($clean_html);
}
- atakan's blog
- Yorum yazmak için giriş yapın veya kayıt olun
Jun09





