Кавычки, слеши и безопасность скриптов

Фанат

oncle terrible
Команда форума
если какому-то идиоту захочется в адр. строке вместо num=5 написать num=s
и какая же ошибка вылезет?

ВОТ И РАЗДЕЛИ
если все правильно, то делаем запрос
если нет - то сообщение об ошибке

а функция тут не при чём.
 

krafty

new Exception
>и какая же ошибка вылезет?
точнее не ошибка, а предупреждение интерпретатора. деление на нуль например, если у меня эта переменная является делителем

как лучше: запретить вывод сообщений интерпретатора в браузер или проверять все переменные и говорить польз-лю что он сделал не так?
 

Фанат

oncle terrible
Команда форума
и то и другое, естественно.
причём первое (как и правильное составление запросов) - обязательно, а второе - факультативно.
 

krafty

new Exception
теперь стало более менее понятно. все так сказать по полочкам.
на практике это будет выглядеть так:
-разбираемся с лишними слешами во всех приходящих в скрипт данных
-отключаем сообщ. интерпретатора (только в раб. варианте)
-можно использовать по желанию функцию для проверки валидности поступающих от пользователя данных (проверка состава, тобишь соответствие здравому смыслу), которая выводит сообщения пользователю
-htmlspecialchars если надо экранировать теги html при выводе в браузер
-при использовании запросов - обязательно экранируем спецсимволы

также я понял, что проверка данных ПО СМЫСЛУ ничего не стОит без вывода сообщения пользователю, поскольку в этом случае можно обойтись простым отключением вывода сообщ. интер-ра в браузер и не парится.
 

krafty

new Exception
спасибо. наконец-то я разобрался. извините, ребята, кого достал уже этой темой. с основополагающими принципами разобрался. надеюсь остальные вопросы буду сам решать.
 
Сверху