|
|
|
| strip_tags удаляет HTML и PHP тэги, а для формы регистрации надо ее применять или есть какие нибуть другие | |
|
|
|
|
|
|
|
для: Victor87
(08.04.2010 в 23:18)
| | с какой целью? | |
|
|
|
|
|
|
|
для: Victor87
(08.04.2010 в 23:18)
| | strip_tags() - мысли извращенца. Она вообще не должна нигде использоваться в принципе.
http://softtime.ru/info/task.php?id_article=110 | |
|
|
|
|
|
|
|
для: Тень*
(08.04.2010 в 23:54)
| | >strip_tags() - мысли извращенца. Она вообще не должна нигде использоваться в принципе.
Весьма полезная функция, при чистке данных введенных пользователем. Приведенная цитата, написана человеком далеким от написания безопасных скриптов. Проверять данные введенные пользователем и вырезать от-туда все непотребное НУЖНО ОБЯЗАТЕЛЬНО!!! Ну если вы конечно не хотите "положить" свой сайт... А что касается чистки, ту тут нужно пропускать ВСЕ данные через ряд фильтров, в зависимости от того какие данные должны остаться. Лучше в итоге получить пустую переменную и "сказать пользователю" чтобы ввел нормальные данные, чем грохнуть БД SQL инъекцией... | |
|
|
|
|
|
|
|
для: Legenda
(15.04.2010 в 10:23)
| | Ну какой же ж бред-то феерический!
Вот здесь, в этом форуме, Вы можете написать любой код. Вообще любой!
И этот любой код, вместо того, чтобы пройти SQL-инъекцией, будет заботливо положен в базу и оттуда из нее изъят при просмотре.
"Лучше фильтров понаставить. Лучше пользователю сказать."
Пользователь такому разработчику скажет, что он муд@к, и если программировать не умеет, то пусть либо учиться идет, либо картошку грузить там, асфальт мести и прочее. . А не сайты писать, и уж тем более - других учить. | |
|
|
|
|
|
|
|
для: Trianon
(15.04.2010 в 10:47)
| | > Вот здесь, в этом форуме, Вы можете написать любой код. Вообще любой!
И этот любой код, вместо того, чтобы пройти SQL-инъекцией, будет заботливо положен в базу и оттуда из нее изъят при просмотре.
И это типо без фильтров - бред!
Просто взяли все введенные данные $_POST['xxx'] и без всякой обработки кинули в БД ???
Примерно так:
mysql_query("INSERT INTO table (text) VALUES ('".$_POST['xxx']."')");
|
И кто после вышесказанного, тут бред написал... Любые данные пред тем как передать их на заливку в БД нужно обязательно проверять. А если вы этого не делаете, то вам самим нужно картошку грузить и асфальт укладывать! | |
|
|
|
|
|
|
|
для: Legenda
(16.04.2010 в 10:41)
| | Не ссорьтесь, горячие финские программисты.
Трианон имел в виду, что данные надо не фильтровать, вырезая теги и портя не только инъекции, но и смысл вводимого юзером поста, а ОБРАБАТЫВАТЬ таким образом, чтобы он мог и код послать в пост, и sql-запрос показать другим, и сделал это легко и ненапряжно, и на выходе получил такую же безобидную строчку
<?php mysql_query("drop table `users`"); ?>
|
которая влезла в БД и вылезла из нее, не став за это время ни инъекцией, ни обрубком "отфильтрованного" текста. | |
|
|
|
|
|
|
|
для: DJ Paltus
(16.04.2010 в 11:20)
| | Так извиняюсь за банальность, фильтры и настраиваются под конкретные задачи. Если нужно к примеру проверить является ли переменная числом, один фильтр. Если нужно проверить является ли переменная строкой, другой фильтр, а не пороть полную чушь утверждая что фильтры не нужны... Другой вопрос что за фильтры и под какие задачи заточены. | |
|
|
|
|
|
|
|
для: Legenda
(16.04.2010 в 10:41)
| | Слышали что-ниблудь про mysql_escape_string или htmlspecialchars? | |
|
|
|
|
|
|
|
для: tvv123456
(16.04.2010 в 11:24)
| | Слышали, как вариант фильтра для строк.
Только лучше mysql_real_escape_string() | |
|
|
|
|
|
|
|
для: Legenda
(16.04.2010 в 11:27)
| | >Слышали, как вариант фильтра для строк.
А что вы понимаете под фильтра для строк
Дак вот: для формы регистрации(да и не только) нужно:
-убрать магические кавычки,
- все строковые значения которые используються в запросе обработать mysql_real_escape_string(непосредствено перед запросом).
Надеюсь понятно что если шифруете пароль в md5допустим, то обрабатывать его не имеет смысла.
Перед выводом в браузер нужно использовать htmlspecialchars()
И не нужно мудрствовать и говорить людям что они ничего не понимают в написании безопасных скриптов. Вы пришли за советом, а когда вам их дают начинаете отстаивать совершенно левые утверждения | |
|
|
|
|
|
|
|
для: tvv123456
(16.04.2010 в 11:42)
| | > А что вы понимаете под фильтра для строк
Любая функция (или набор функций), для обработки полученных данных.
> Перед выводом в браузер нужно использовать htmlspecialchars()
И убрать экранирующие \ если они есть, про это вы запамятовали. | |
|
|
|
|
|
|
|
для: Legenda
(16.04.2010 в 14:07)
| | >И убрать экранирующие \ если они есть, про это вы запамятовали.
Вы внимательней прочитайте. Это первым пунктом идет.
А если вы берете из базы то что планируете вывести в браузер, то никаких экранирующих слешей в базе быть не должно | |
|
|
|
|
|
|
|
для: Trianon
(15.04.2010 в 10:47)
| | [поправлено модератором] | |
|
|
|
|
|
|
|
для: хер_веревкин
(16.04.2010 в 11:28)
| | strip_tags() действительно бред и служит для крайне узкого круга задач. Нармальные люди обрабатывают данные HtmlSpecialChars() и MySQL_real_escape_string().
Legenda, лишние \ сами из задницы не вырастают, а появляются в результате работы чудо-програмеров, т.н. двойной обработки. | |
|
|
|