Wenn Sie das Standardverhalten des post()
Methode ändern möchten, können Sie die Kerneingangs Bibliothek, verlängern oder, wenn Sie faul sind, können Sie einfach Linie 278 ändern (oder so) der Eingangs Bibliothek zu lesen:
/**
* Fetch an item from the POST array
*
* @access public
* @param string
* @param bool
* @return string
*/
function post($index = '', $xss_clean = TRUE)
{
return $this->_fetch_from_array($_POST, $index, $xss_clean);
}
hier der einzige Unterschied ist, dass ich die $ xss_clean Variable TRUE
statt FALSE
geändert haben. Jetzt können Sie die globale XSS-Filterung deaktivieren und Eingaben automatisch filtern, es sei denn, Sie geben false als zweiten Parameter in Ihrem Aufruf der Methode der Input-Bibliothek an. Nur eine Methode ist die get()
Methode, und Sie können das auf die gleiche Weise ändern.
Wenn ich jedoch Sie wäre, würde ich einfach die native Bibliothek erweitern, denn es besteht eine gute Chance, dass Sie dies bei der Aktualisierung von CodeIgniter vergessen haben, und dann werden Sie sich plötzlich fragen, warum Sie Re XSS angegriffen bekommen. Das würde wie folgt aussehen:
class MY_Input extends CI_Input {
function My_Input()
{
parent::CI_Input();
}
function post($index = '', $xss_clean = TRUE)
{
return parent::post($index, $xss_clean);
}
}
Sie hier mehr über Bibliotheken erstreckt lernen können:
http://codeigniter.com/user_guide/general/creating_libraries.html
thanks man 2 Stunden this.I verbringen musste Problem während base64 Bilder durch Filterung ckeditor.XSS Speichern falsch war, aber es ist wahr in der Konfigurationsdatei von meinem Kollegen eingestellt – mokNathal
überprüfen Sie diesen Blog http://tekina.info/xss-filtering-ckeditor/ –