Добро пожаловать, Гость!
Защита sql инекции - Полезный php код №72
Все категории

Защита sql инекции

Описание: PHP-Код защиты от sql-иньекций.
Код:

<?php  
/**  
* Защита от sql инъекций  
* автор: [BoB] 
* 15.03.2015  
*/  
/*  
Почему-то разработчики PHP не сделали функцию для работы с бд,  
которая принимает запросы с параметрами.  
Это сильно бы помогло в безопасности.  
*/  
//эта функция экранирует параметры  
function qw() {  
$args func_get_args();  
$query array_shift($args);  
$args array_map('mysql_real_escape_string'$args);  
array_unshift($args$query);  
$query call_user_func_array('sprintf'$args);  
if (!
$query) die('неверный запрос');  
return 
mysql_query($query);  
}  
//пример использования  
$q qw("SELECT * FROM tbl WHERE login='%s' AND pass='%s' ""лог'ин""пар'оль");  
//в этом запросе все кавычки будут экранирован
?>


Вместо %s в функцию подставляется параметр, обработанный через mysql_real_escape_string поэтому нет никакой необходимости предварительно обрабатывать данные , можно писать сразу qw("SELECT FROM tbl WHERE id='%s' ", $_GET['id']); Главное не забыть поместить %s в кавычки.
Добавил: Izg-20 (19 Сент 2015)

Скачать: TEXTAREA
DCMS-Social.ru - движок социальной сети, вап и веб мастерская, файло-обменник и форум.
Статистика DCMS-Social.ru: Пользователей - 14899, тем на форуме - 30287, сообщений - 298840