Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Есть альтернатива filter_var для PHP 4?

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Есть альтернатива filter_var для PHP 4?
Zend
Отправлено: 18 Января, 2011 - 17:32:49
Post Id


Гость


Покинул форум
Сообщений всего: 126
Дата рег-ции: Февр. 2010  


Помог: 0 раз(а)




Есть альтернатива filter_var для PHP 4?
Необходимо либо найти альтернативу, либо создать такую функцию....
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. $example1 = filter_var($input, FILTER_SANITIZE_MAGIC_QUOTES);
  3. $example2 = filter_var($input, FILTER_VALIDATE_INT);
  4.  

(Отредактировано автором: 18 Января, 2011 - 17:36:31)

 
 Top
DeepVarvar Супермодератор
Отправлено: 18 Января, 2011 - 18:04:12
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




Регулярки...
 
 Top
Zend
Отправлено: 18 Января, 2011 - 18:09:11
Post Id


Гость


Покинул форум
Сообщений всего: 126
Дата рег-ции: Февр. 2010  


Помог: 0 раз(а)




DeepVarvar пишет:
Регулярки...

Я не силён в них, только начал изучать...
Правлю готовый скрипт, пролистал весь код, эта функция используется только для проверки поступающих $_GET данных, посмотрите пожалуйста, насколько безопасна моя функция:

PHP:
скопировать код в буфер обмена
  1.  
  2.                 function filter_var($inputs, $const){
  3.                         switch($const){
  4.                                 case "FILTER_VALIDATE_INT":
  5.                                         if(is_int($inputs) || is_double($input)){
  6.                                                 return $inputs;
  7.                                         } else {
  8.                                                 return intval($inputs);
  9.                                         }
  10.                                 break;         
  11.                                 case "FILTER_SANITIZE_MAGIC_QUOTES":                   
  12.                                         $inputs .= "";
  13.                                         $inputs = str_replace(array("'", "\""), "", $inputs);
  14.                                         echo strip_tags($inputs);              
  15.                                         exit();
  16.                                 break;
  17.                         }
  18.                 }
  19.  
  20.  
 
 Top
DeepVarvar Супермодератор
Отправлено: 18 Января, 2011 - 18:35:15
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




Нормальная ф-ция у вас.. Строка 12 не нужна совсем...
У меня вот такая есть:
PHP:
скопировать код в буфер обмена
  1.  
  2.         private function cleanstr($string,$lenght,$type) {
  3.                 $string = substr(trim($string),0,$lenght);
  4.                 switch ($type) {
  5.                         case num:
  6.                                 $mask = "/^[0-9]{1,".$lenght."}$/";
  7.                                 break;
  8.                         case sym:
  9.                                 $mask = "/^[a-z]{1,".$lenght."}$/i";
  10.                                 break;
  11.                         case all:
  12.                                 $mask = "/^[0-9a-z]{1,".$lenght."}$/i";
  13.                                 break;
  14.                         case overall:
  15.                                 $mask = "/^(.*){1,".$lenght."}$/";
  16.                                 break;
  17.                         }
  18.                 if(preg_match($mask,$string)) return $string;
  19.                 else return false;
  20.                 }

Использую так:
$hash = $this->cleanstr($_POST['hash'],32,'all');
if ($hash) { усё путём, работаем... }
else { обработка ошибок... }

Всегда можно добавить, удалить типы проверок...
 
 Top
JustUserR
Отправлено: 19 Января, 2011 - 14:09:40
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




Zend пишет:
Необходимо либо найти альтернативу, либо создать такую функцию....
Использование языка PHP версии 4 предполагает возможность осуществления передачи переменных в функцию в виде ссылочных объектов - что позволяет реализовать непосредственное изменение информационного поля и ассоциированного типа контейнера на основе соответствюущих функций


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB