Вот еще из кх.
[code]class InitVars {
# Недопустимые слова в запросахINSERT
var $deny_words = array(\'UNION\',\'CHAR\',\'INSERT\',\'DELETE\',\'SELECT\',\'UPDATE\',\'GROUP\',\'ORDER\',\'BENCHMARK\',\'union\',\'char\',\'insert\',\'delete\',\'select\',\'update\',\'group\',\'order\',\'benchmark\');
function InitVars() {
}
# Метод конвентирует суперглобальные массивы $_POST, $_GET в перемнные
# Например : $_GET[\'psw\'] будет переобразовано в $psw с тем же значением
function convertArray2Vars () {
foreach($_GET as $_ind => $_val) {
global $$_ind;
if(is_array($$_ind)) $$_ind = htmlspecialchars(stripslashes($_val));
}
foreach($_POST as $_ind => $_val) {
global $$_ind;
if(is_array($$_ind)) $$_ind = htmlspecialchars(stripslashes($_val));
}
}
# Метод проверяет $_GET и $_POST переменные на наличие опасных данных и SQL инъекций
function checkVars() {
//Проверка опасных данных.
foreach($_GET as $_ind => $_val) {
$_GET[$_ind] = htmlspecialchars(stripslashes($_val));
$exp = explode(\" \",$_GET[$_ind]);
foreach($exp as $ind => $val) {
if(in_array($val,$this->deny_words)) $this->antihack(\"Произошла ошибка системы!\"
![*](/content/reactions/bystrie/podmig-original.png)
;
}
}
foreach($_POST as $_ind => $_val) {
$_POST[$_ind] = htmlspecialchars(stripslashes($_val));
$exp = explode(\" \",$_POST[$_ind]);
foreach($exp as $ind => $val) {
if(in_array($val,$this->deny_words)) $this->antihack(\"Произошла ошибка системы!\"
![*](/content/reactions/bystrie/podmig-original.png)
;
}
}
}
function antihack($msg) {
echo \"Произошла ошибка системы!\";
die;
}
}
foreach ($_GET as $check_url) {
if (!is_string($check_url) || !preg_match(\'#^(?:[a-z0-9_\\-/]+|\\.+(\"?!/))*$#i\', $check_url)) {
include_once \'inc/head.php\';
echo \"<div class=\'block\'>Замечена попытка SQL инъекции! Ваши данные отправлены администратору.</div>\";
$msgsql=\'Замечена попытка SQL инъекции пользователем: \'.$ku[\'nick\'].\' (ID-\'.$ku[\'id\'].\').\';
$timeban = time()+3600;
mysql_query(\"INSERT INTO `kolhoz_ban` SET `id_user` = \'$ku[id]\', `id_who` = \'2\', `msg` = \'Попытка SQL инъекции.\', `izg` = \'0\', `time` = \'$timeban\'\"
![*](/content/reactions/bystrie/podmig-original.png)
;
exit;
}
}
if($ku[\'hydropinics_type\'] > \'400\'){
mysql_query(\"UPDATE `kolhoz_user` SET `hydropinics_type` = \'400\' WHERE `id` = \'$ku[id]\'\"
![*](/content/reactions/bystrie/podmig-original.png)
;
}
if($ku[\'hydropinics_time\']<$time){
mysql_query(\"UPDATE `kolhoz_user` SET `hydropinics_type` = \'0\' WHERE `id` = \'$ku[id]\'\"
![*](/content/reactions/bystrie/podmig-original.png)
;
}
unset($check_url);[/code]