Follow along with the video below to see how to install our site as a web app on your home screen.
Примечание: This feature may not be available in some browsers.
define('MQGPC',get_magic_quotes_gpc());
/**
* Imports value from array and cleans it out
*
* @param array $array Source array
* @param string $key Key
* @param string $mode String mode
* @param string $maxdig Return limiter
* @return string
*/
function val_import( $array, $key, $mode='AL', $maxdig=0 ) {
if(!isset($array) || !isset($array[$key]) || !is_array($array)) return false;
switch($mode)
{
case 'AL':
$v = alphaonly($array[$key]);
break;
case 'NU':
$v = numericonly($array[$key]);
break;
case 'TXT':
$v = textonly($array[$key]);
break;
case 'SYM':
$v = sympholsonly($array[$key]);
break;
case 'MIX':
$v = trim($array[$key]);
if(!eregi('<',$v))
{
continue;
}
else
{
return false;
}
break;
case 'RAW':
$v = trim($array[$key]);
break;
}
if(defined('MQGPC'))
{ $v = stripslashes($v); }
if($maxdig)
{ $v = substr($v,0,$maxdig); }
return $v;
}
/**
* function textonly
* @param input text
*/
function textonly($text) {
return(preg_replace('/[^a-zA-Z_]/', '', $text));
}
/**
* function sympholsonly
* @param input text
*/
function sympholsonly($text) {
return(preg_replace('/[^!-*-@^_]/', '', $text));
}
/**
* function numericonly
* @param input text
*/
function numericonly($text) {
return(preg_replace('/[^0-9_]/', '', $text));
}
/**
* function alphaonly
* @param input text
*/
function alphaonly($text) {
return(preg_replace('/[^a-zA-Z0-9_]/', '', $text));
}
антихак готовый поставь, от damagelab.org даже.
filter_input_array() и filter_var_array()
Самое верное решение.Использую mod_rewrite+регулярка проверки разрешаю только[a-z_-0-9] и все, остальных послаю на 3 числа - 4 0 4
php_flag engine off
Делаю детект на наличие слов, характерных для SQL-инъекций с учетом флага правомерности такой передачи запроса (по сути - локальный флаг для каждого запроса (UNION, SELECT, UPDATE, DELETE и т.д.) В случае обнаружения подобной бяки - отправление в ловушку (с записью лога действий пользователя).
Обязательная проверка на наличие конструкций a-ля "./././" если вы включаете файлы, используя данные из принимаемой строки запроса...