Показать сообщение отдельно

  #20  
Старый 05.01.2007, 07:00
GHostly_FOX
Участник форума
Регистрация: 04.01.2007
Сообщений: 112
Провел на форуме:
179531

Репутация: 48
По умолчанию

Вот мой способ предотвратить какие либо попытки SQL injection или XSS

PHP код:
function var_chek($var,$col){
    
$var    =    substr($var0$col);
    
$var    =    preg_replace("/[^\w\x7F-\xFF\s]/"" "$var);
    
$good    =    ereg_replace(" +"" "$var);
    
$good    =    strip_tags($good);
    return 
$good;
}
$var=var_chek($_GET['var'],4); 
Если значение $var это просто передаваемый индекс для выборки из базы то достаточно его обрезать до 4-х символов, в 4 символа точно ничего не впишешь...
А если идет запись данных в базу то вот пример работы скрипта:

PHP код:
/*В переменную VAR передадим код ну к примеру 
такой - "><script>alert()</script>*/
$var=$_GET['var'];
mysql_query("INSERT INTO base SET text='".var_chek($var)."'");
/*И в базу уйдут такие данные -  script alert script , И
даже если будете передавать SQL инжекцию то 
данные будут записаны в базу просто как такст!*/ 
 
Ответить с цитированием