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
Форумы портала PHP.SU :: Версия для печати :: Просто и эффективно
Форумы портала PHP.SU » PHP » Программирование на PHP » Просто и эффективно

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

1. ArchAngel - 19 Июля, 2010 - 19:51:23 - перейти к сообщению
вот такой вопрос как лучше и эффективней защитить ?

$_POST['cp_server']; - число (номер сервера) тип формы select
$_POST['cp_remember']; - число (запомнить) тип формы checkbox
$_POST['cp_attachip']; - число (прикрепить сессию у ip ) тип формы checkbox


PHP:
скопировать код в буфер обмена
  1. $_server = $_POST['cp_server'];
  2. $_remember = $_POST['cp_remember'];
  3. $_attachip = $_POST['cp_attachip'];
  4.  
  5. if(empty($_server)){
  6.    die("Error Server ID.");
  7. } elseif(!is_numeric($_server)){
  8.    die("Error Server ID.");
  9. }
  10.  
  11. if(empty($_remember)){
  12.    $_remember = 0;
  13. } elseif(!is_numeric($_remember)){
  14.    $_remember = 0;
  15. }
  16.  
  17. if(empty($_attachip)){
  18.    $_attachip = 0;
  19. } elseif(!is_numeric($_attachip)){
  20.   $_attachip = 0;
  21. }


или

PHP:
скопировать код в буфер обмена
  1. $_server =(int) $_POST['cp_server'];
  2. $_remember = (bool)$_POST['cp_remember'];
  3. $_attachip = (bool)$_POST['cp_attachip'];
  4.  
  5. if(empty($_server)){
  6.    die("Error Server ID.");
  7. }
  8. if(empty($_remember)){
  9.    $_remember = 0;
  10. }
  11. if(empty($_attachip)){
  12.    $_attachip = 0;
  13. }
  14. }
2. Champion - 19 Июля, 2010 - 20:00:35 - перейти к сообщению
Мне второй вариант больше нарвится. Только после приведения типов empty там не будет.
3. ArchAngel - 19 Июля, 2010 - 20:07:37 - перейти к сообщению
ой чуток ступил

второй вариант

PHP:
скопировать код в буфер обмена
  1. if(empty($_server)){
  2.    die("Error Server ID.");
  3. }
  4. if(empty($_remember)){
  5.    $_remember = false;
  6. }
  7. if(empty($_attachip)){
  8.    $_attachip = false;
  9. }
4. wats - 19 Июля, 2010 - 20:50:31 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. $_server = !empty($_POST['cp_server']) ? (int)$_POST['cp_server'] : die("Error Server ID.");
  2. $_remember = !empty($_POST['cp_remember']) ? (bool)$_POST['cp_remember'] : false;
  3. $_attachip = !empty($_POST['cp_attachip']) ? (bool)$_POST['cp_attachip'] : false;

 

Powered by ExBB FM 1.0 RC1