Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Безопасность в функциях
 
 автор: Maxam   (17.09.2012 в 09:51)   письмо автору
 
 

Привет всем. Не могли бы вы помочь с одним теоретическим вопросом?

Обязательно ли обрабатывать переменную, используемую в функции, до неё, или можно в ней?

function name ($post)
{
$post = htmlspecialchars($post);
$post = stripslashes($post);
...
}


$post = htmlspecialchars($post);
$post = stripslashes($post);
function name ($post)
{
...
}

  Ответить  
 
 автор: Rolex   (17.09.2012 в 10:32)   письмо автору
 
   для: Maxam   (17.09.2012 в 09:51)
 

Здравствуйте. Вы можете обработать переменную как до функции, так и в теле. Но для уменьшения избыточности кода можно сделать функцию-обработчик:


function secureParam($param){

$param = htmlspecialchars($param); 
$param = stripslashes($param);

return $param;
}


И тогда Ваш пример будет выглядеть вот так:

function name ($post) 

secureParam($post);
... 
}


Таким образом, Вы упрощаете дальнейшее сопровождение кода.

  Ответить  
 
 автор: confirm   (17.09.2012 в 11:30)   письмо автору
 
   для: Maxam   (17.09.2012 в 09:51)
 

А нужна ли htmlspecialchars()?

  Ответить  
 
 автор: Maxam   (17.09.2012 в 18:06)   письмо автору
 
   для: confirm   (17.09.2012 в 11:30)
 

Я просто использую оба варианта защиты, чтобы увеличить безопасность. Если есть ещё и другие варианты защит - и их буду использовать :)

  Ответить  
 
 автор: confirm   (17.09.2012 в 23:55)   письмо автору
 
   для: Maxam   (17.09.2012 в 18:06)
 

Безопасно, это значит понимание среды в которой вы работаете. А не успев разобраться с тем, что пришло, оборачивать сразу его (не понятно зачем) htmlspecialchars(), это далеко от понятия безопасности.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования