ANTICHAT Forum
HOME FORUMS MEMBERS RECENT POSTS LOG IN  
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > PHP
   
 
 
Опции темы Поиск в этой теме Опции просмотра

Анти SQL injection
  #1  
Старый 11.12.2007, 07:14
guest3297
Banned
Регистрация: 27.06.2006
Сообщений: 1,614
С нами: 10459106

Репутация: 2996


По умолчанию Анти SQL injection

Можно легко обезапасить любю cms поставив грамотную фильтрацию, так что если вы не уверненны в своем движке или в чужом просто просто проводите все запросы через эту функцию.

PHP код:
<?

error_reporting
(0);

function 
HLSQL($Query)
{
    
$Query=preg_replace("/(\s{1})(JOIN)/", "\\1\nJOIN", $Query);
    
$Query=preg_replace("/([^a-zA-Z]{1})([\d0-9]+)/", "\\1<span style=\"color:6666CC\">\\2</span>", $Query);

    
$Query=preg_replace("/('[^']+')/", "<span style=\"color:FF9900\">\\1</span>", $Query);
    
$Query=preg_replace("/(#.*\n)/", "<span style=\"color:999999\">\\1</span>", $Query);
    
$Query=preg_replace("/FROM[\s+](\S+)\s/", "FROM <span style=\"color:339900;text-decoration:underline\">\\1</span> ", $Query);

    
$Query=preg_replace("/JOIN[\s+](\S+)\s/", "JOIN <span style=\"color:339900;text-decoration:underline\">\\1</span> ", $Query);
    
$Query=preg_replace("/(COUNT|SUM)\(([^\)]+)\)/", "<span style=\"color:FF0000;font-weight:bold\">\\1</span>(\\2)", $Query);


    
$Query=preg_replace("/\s{1}(FROM|JOIN|GROUP|WHERE|ORDER|LIMIT|AND|ON)\s{1}/", " <span style=\"color:0000FF;font-weight:bold;\">\\1</span> ", $Query);
    
$Query=preg_replace("/\s{1}(BY|OR|AS|IN|BETWEEN)\s{1}/", " <span style=\"color:000000;font-weight:bold;\">\\1</span> ", $Query);
    
$Query=preg_replace("/(SELECT)/", " <span style=\"color:0000FF;font-weight:bold;\">\\1</span> ", $Query);
    
$Query=preg_replace("/\(/", "<span style=\"font-weight:bold;\">(</span>", $Query);
    
$Query=preg_replace("/\)/", "<span style=\"font-weight:bold;\">)</span>", $Query);


    return 
"<p style=\"color:000000; font-size:12px;\">".nl2br($Query)."</p>";
}

?>
 
Ответить с цитированием
 



Предыдущая тема Следующая тема

Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.