|
|
|
| Правильно ли так обрабатывать переменну передающиеся методом GET?
$_GET['cat']= addslashes(htmlspecialchars($_REQUEST["cat"], ENT_QUOTES));
Ну а потом уже ее использовать по назначению... | |
|
|
|
|
|
|
|
для: Sergeous
(11.07.2007 в 13:03)
| | что содержится в переменной и куда она пойдет? | |
|
|
|
|
|
|
|
для: bronenos
(11.07.2007 в 13:33)
| | Вот именно,если в базу,то htmlspecialchars и нафиг не нужен.И вообще,с ним лучше не спешить,а выполнять перед самым выводом в браузер.Пример бездумного использования htmlspecialchars как раз у меня перед глазами.Сейчас переделываю чужой форум,там ее пользовали перед записью в файл.Когда название темы слишком длинное,оно обрезается скриптом,и часто можно увидеть результат обрезки не Dolce & Gab...,а Dolce &am... | |
|
|
|
|
|
|
|
для: Ralph
(11.07.2007 в 13:52)
| | а по умному надо было сначала обрезать строку,а уже при выводе делать Echo htmlspecialchars($a).И зачем вообще использовать параметр ent_quotes,если позже и одинарные,и двойные кавычки все равно заэкранируются функцией addslashes ? П.С многие(каюсь,и я в свое время)думают,что чем больше функций напустить на строку,тем безопаснее она будет...А надо просто сесть и разобраться,что какая функция делает,и от чего конкретно надо защищать | |
|
|
|
|
|
|
|
для: Ralph
(11.07.2007 в 13:52)
| | В переменно содержится грубо говоря раздел, т.е. index.php?cat=news или index.php?cat=articles и в зависимости от этого выводится содержимое,
т.е.
if ($_GET['cat']=="news")
{
....
}
if ($_GET['cat']=="articles")
{
....
} | |
|
|
|
|
|
|
|
для: Sergeous
(11.07.2007 в 14:05)
| | так тут и не надо ничего обрабатывать.. как пришло так и читайте | |
|
|
|
|
|
|
|
для: bronenos
(11.07.2007 в 14:32)
| | Так а если кто нибудь попытается впихнуть туда взавредный код? | |
|
|
|
|
|
|
|
для: Sergeous
(11.07.2007 в 15:18)
| | если делаете так как показали - ничего вам не грозит
ну и приведите пример такого кода..... ?? | |
|
|
|
|
|
|
|
для: Sergeous
(11.07.2007 в 15:18)
| | Если GET-параметр не используется на прямую в инструкциях include, то злоумышленник ничего добиться не сможет. | |
|
|
|