<?php
function inputclean($input$sql=false) {
    
$input htmlentities($inputENT_QUOTES'UTF-8');
    
// мнемонизировали строку.

    
if(get_magic_quotes_gpc ())
    {
        
$input stripslashes ($input);
        
// убрали лишнее теперь экранирование.
    
}
    if (
$sql)
    {
        
$input mysql_real_escape_string ($input);
        
// если нужен MySQL-запрос, то делаем соответствующую очистку. 
        // Подключение к базе должно быть активным!
    
}
    
$input strip_tags($input);
    
//режем теги.

    
$input=str_replace ("\n"," "$input);
    
$input=str_replace ("\r",""$input);
    
//обрабатываем переводы строки.

    
return $input;
}

// ----------------------------------------------------
// Дальше - пример использования для фильтрации данных 
// без MySQL и для фильтрации в качестве MySQL-запроса.
// ----------------------------------------------------

$test1 "'><a href='#test'>&nbsp;_</a>Безумная тестовая запись
со всякими \n
¶"
;   

$test2 "'';!--\"<XSS>=&{()}";  

echo 
inputclean($test1);


$link mysql_connect("localhost""root""") or die("Could not connect");
echo 
inputclean($test2true);