<?php
defined('PROTECTOR') or die('Error: restricted access');

class InitVars {
# Недопустимые слова в запросахINSERT
var $deny_words = array('UNION','uNION','onION','UNIOn','UNIon','UNion','UNiON','uNiOn','UnIoN','unIon','unionN','CHAR','INSERT','DELETE','delETE','deleTE','dELeTE','DeLEtE','eeLEte','deLETe','eELEte','delETE','dEleTe','dELETe','deletE','deLETE','dELETE','Delete','DElete','DELete','DELEte','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("Запрещено!Доступ закрыт!<br> Ваш ip адресс помечен!");
}
}

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("Запрещено!Доступ закрыт!<br> Ваш ip адресс помечен!");
}
}

}

function antihack($msg) {
echo '<font color="red"><b>Antihack error: </b></font>'.$msg.'<br>\n';
die;
}

}



?>
