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. Озон - 09 Мая, 2013 - 20:01:14 - перейти к сообщению
Добрый вечер!
Подскажите, нужно ли фильтровать данные функцией
PHP:
скопировать код в буфер обмена
  1. $text=$mysqli->real_escape_string(htmlspecialchars(trim($_POST['text'])));


которые заносятся в базу данных не от посетителя, а которые я сам ввожу через админ панель?

И я фильтрую таким способом все данные от посетителей до занесения в базу, а при выводе ничем не фильтрую.
Правильно ли я делаю?
2. OrmaJever - 09 Мая, 2013 - 20:38:18 - перейти к сообщению
Озон пишет:
а которые я сам ввожу через админ панель?

если вы будете взламывать свой сайт то обязательно!
Озон пишет:
И я фильтрую таким способом все данные от посетителей до занесения в базу, а при выводе ничем не фильтрую.

а вы знаете что имено делают эти функции и откуда появляются уязвимости?
Озон пишет:
Правильно ли я делаю?

Зависит от ситуации, но в целом нет. Я бы htmlspecialchars при записи в базу не использовал, а trim вобще для редких случаев.
3. DeepVarvar - 10 Мая, 2013 - 08:58:16 - перейти к сообщению
OrmaJever пишет:
если вы будете взламывать свой сайт то обязательно!
Ты хочешь сказать что в админке ты ничего не проверяешь?
4. DelphinPRO - 10 Мая, 2013 - 10:37:57 - перейти к сообщению
Озон пишет:
real_escape_string(htmlspecialchars(trim($_POST['text'])));

как же ж меня умиляют такие конструкции Улыбка не знаю что фильтрую, но отфильтрую всё!!!
вы еще парочку фиьтров забыли.. для пущей верности..


А по делу - лучше нигде дыр не оставлять.
5. LIME - 10 Мая, 2013 - 10:45:17 - перейти к сообщению
OrmaJever пишет:
а trim вобще для редких случаев.
trim почти всегда нужен
6. Tsigyr - 10 Мая, 2013 - 17:28:27 - перейти к сообщению
Если я фильтрую таким способом
PHP:
скопировать код в буфер обмена
  1. $text=$mysqli->real_escape_string(htmlspecialchars(trim($_POST['text'])));

все данные от посетителей до занесения в базу, а при выводе ничем не фильтрую (Только приобразовую в нормальный вид htmlspecialchars_decode)
ну и все страницы где есть id проверяю $id = intval($_GET['id']);
уязвимости никак не может быть..?
7. LIME - 10 Мая, 2013 - 17:50:24 - перейти к сообщению
Tsigyr пишет:
а при выводе ничем не фильтрую (Только htmlspecialchars_decode)
ржунимагу
8. Tsigyr - 10 Мая, 2013 - 17:51:49 - перейти к сообщению
А что смешного? Растерялся
9. LIME - 10 Мая, 2013 - 17:55:02 - перейти к сообщению
ты избавляешься от уязвимости при добавлении в базу а потом сам же при выводе ее возращаешь обратно
10. Tsigyr - 10 Мая, 2013 - 17:58:43 - перейти к сообщению
Ой глупость сказал, при выводе я htmlspecialchars_decode использую только там, где я добавлял данные через админку для описаний, а так больше нигде не использую.

Не проснулся еще Улыбка
11. LIME - 10 Мая, 2013 - 18:10:50 - перейти к сообщению
тогда зачем вообще эти пляски с htmlspecialchars
12. Tsigyr - 10 Мая, 2013 - 18:38:09 - перейти к сообщению
Не знаю Улыбка


Как по мне лучше один раз отфильтровать данные до занесения в базу,
чтобы там всякий мусор не хранить, чем потом при выводе каждый раз фильтровать их..
Или это неправильный способ? Может быть уязвимость?
(Добавление)
Или лучше при записи в базу использовать mysqli_real_escape_string и trim, а на выводе уже где нужно htmlspecialchars? Растерялся
13. LIME - 10 Мая, 2013 - 20:17:10 - перейти к сообщению
пожалуй
главное не забыть про фильтрацию
14. Tsigyr - 10 Мая, 2013 - 20:28:41 - перейти к сообщению
какую именно?
На выводе?
15. Tsigyr - 11 Мая, 2013 - 01:12:07 - перейти к сообщению
а ведь еще лучше фильтровать на записи,потому,что:

1.Функция вызовется только один раз на записи,что лучше чем каждый раз на выводе.

2.Существует возможность забыть профильтровать данные на выводе

что можете сказать по этому поводу?

 

Powered by ExBB FM 1.0 RC1