Valar
Новичок
Безопасность входящих данных для LIKE (SQL)
Большая просьба к опытными программистам, прокомментируйте мою функцию для фильтрования переменных, участвующих в поисковых SQL-запросах (LIKE)
$full_search_mode и $clear_tags - два факультативных параметра. Первый заменяет * на % (для нестрого поиска), второй - над переменной выполняет функцию strip_tags.
Большая просьба к опытными программистам, прокомментируйте мою функцию для фильтрования переменных, участвующих в поисковых SQL-запросах (LIKE)
$full_search_mode и $clear_tags - два факультативных параметра. Первый заменяет * на % (для нестрого поиска), второй - над переменной выполняет функцию strip_tags.
PHP:
function A_ProtectSqlSearchParam($sql_param, $full_search_mode="", $clear_tags="")
{
if ($clear_tags==true) $sql_param=strip_tags($sql_param);
$sql_param=str_replace('\\','\\\\', $sql_param);
$sql_param=addCslashes($sql_param, '_%');
if ($full_search_mode==true) $sql_param=eregi_replace("\*", '%', $sql_param);
$sql_param=mysql_real_escape_string($sql_param);
if (strlen($sql_param)>3 and strlen($sql_param)<100) return $sql_param;
else return false;
}