Перейти к содержимому

Фото
- - - - -

ПХП и валидация данных


  • Вы не можете создать новую тему
  • Please log in to reply
11 ответов в этой теме

#1 simonsays

simonsays
  • Пользователь
  • 835 сообщений

Отправлено 02 Май 2007 - 20:41

Короче такие дела. Не совсем понимаю.
Элементарный пример - есть форма, туда вводиться имя, допустим Ant's
Никакой функции я не применяю, но почему-то форма принимает это как Ant\'s
Это настройки ПХП на сервере или теперь так всегда? :)
  • 0

#2 Vladson

Vladson

    XTGamers.com

  • Постоялец
  • 1 921 сообщений
  • Откуда:Эстония, Таллинн

Отправлено 02 Май 2007 - 20:42

http://phpfaq.ru/slashes

Я предпочитаю так

$name = get_magic_quotes_gpc()
	? stripslashes($_POST['name'])
	: $_POST['name'];

Сообщение изменено: Vladson (02 Май 2007 - 23:37 )

  • 0
Один Владсон может за...ать всех, кроме себя самого. Два Владсона могли бы за...ать абсолютно кого угодно, но Владсон единственный и неповторимый. ©Vladson

Вы либо способны перелопатить тонны информации и отсеять лишнее, либо программистом не будете. ©Psih

Не вазелин, а бизнес-гель ©Avagraen

#3 simonsays

simonsays
  • Пользователь
  • 835 сообщений

Отправлено 02 Май 2007 - 20:57

спасибо! я стал умнее
  • 0

#4 Setor

Setor
  • Постоялец
  • 1 890 сообщений
  • Откуда:Эстония, Таллин

Отправлено 02 Май 2007 - 21:54

+ удобно это выражение выделить в функцию ;) Обычно в таких случаях используют рекурсивную функцию, которая обработает все входящие данные, чтобы даже не заморачиваться с отдельными переменными.
  • 0

#5 Vladson

Vladson

    XTGamers.com

  • Постоялец
  • 1 921 сообщений
  • Откуда:Эстония, Таллинн

Отправлено 02 Май 2007 - 21:56

Обычно в таких случаях используют рекурсивную функцию

Ничего не делается "обычно", всё зависит от ситуации...
  • 0
Один Владсон может за...ать всех, кроме себя самого. Два Владсона могли бы за...ать абсолютно кого угодно, но Владсон единственный и неповторимый. ©Vladson

Вы либо способны перелопатить тонны информации и отсеять лишнее, либо программистом не будете. ©Psih

Не вазелин, а бизнес-гель ©Avagraen

#6 Setor

Setor
  • Постоялец
  • 1 890 сообщений
  • Откуда:Эстония, Таллин

Отправлено 02 Май 2007 - 22:10

Ничего не делается "обычно", всё зависит от ситуации...

Согласен, но человек имеет свойство забывать обработать какое-то поле, вот тогда ему и не придётся о нём лишний раз вспоминать ;) Например, если через месяц он добавит в форму новое поле. Я просто предлагаю альтернативный вариант, ничего личного :)

P.S. На каком-то сайте я заметил, что экранирование слешей возрастает с каждым сабмитом формы в геометрической прогрессии!
  • 0

#7 Vladson

Vladson

    XTGamers.com

  • Постоялец
  • 1 921 сообщений
  • Откуда:Эстония, Таллинн

Отправлено 02 Май 2007 - 22:26

человек имеет свойство забывать

Именно по этому проще вообще отрубить через php.ini (если свой сервак) или через .htaccess если shared-хостинг. При каждом запуске пускать рекурсивную функцию это не выход, это вход в (_|_)
  • 0
Один Владсон может за...ать всех, кроме себя самого. Два Владсона могли бы за...ать абсолютно кого угодно, но Владсон единственный и неповторимый. ©Vladson

Вы либо способны перелопатить тонны информации и отсеять лишнее, либо программистом не будете. ©Psih

Не вазелин, а бизнес-гель ©Avagraen

#8 Setor

Setor
  • Постоялец
  • 1 890 сообщений
  • Откуда:Эстония, Таллин

Отправлено 02 Май 2007 - 22:37

При каждом запуске пускать рекурсивную функцию это не выход, это вход в (_|_)

Полностью согласен :)

Когда-то меня заботили проблемы скорости работы WEB-приложения, но с годами я стал скептически к этому относиться. Рекурсия конечно ни есть хорошо, но будем реалистами - на странице форма, максимум 10 полей, можно быть параноиком и предположить, что какой-то нехороший человек специально сформирует кучу полей, отправит мегабайтный текст методом POST чтобы забомбить наше приложение ;)

В данной ситуации у меня есть другой совет - сменить хостинг, ибо хостинг, где включен magic_quotes - это полный сарай :) Скоро их вообще запретят!
  • 0

#9 Vladson

Vladson

    XTGamers.com

  • Постоялец
  • 1 921 сообщений
  • Откуда:Эстония, Таллинн

Отправлено 02 Май 2007 - 23:34

Когда-то меня заботили проблемы скорости работы WEB-приложения

Меня не беспокоит скорость, меня беспокоит рациональность. (искать обходные пути и делать то что делать нет никакого смысла это не в моём стиле)

можно быть параноиком и предположить

А можно быть реалистом и предусмотреть, чтоб даже теоретически такой "возможности" не было.

Сообщение изменено: Vladson (02 Май 2007 - 23:42 )

  • 0
Один Владсон может за...ать всех, кроме себя самого. Два Владсона могли бы за...ать абсолютно кого угодно, но Владсон единственный и неповторимый. ©Vladson

Вы либо способны перелопатить тонны информации и отсеять лишнее, либо программистом не будете. ©Psih

Не вазелин, а бизнес-гель ©Avagraen

#10 simonsays

simonsays
  • Пользователь
  • 835 сообщений

Отправлено 03 Май 2007 - 12:46

можно быть параноиком и предположить

считаю, что разработчик на пхп должен быть параноиком. лучше перебдить, чем недобдить

В данной ситуации у меня есть другой совет - сменить хостинг, ибо хостинг, где включен magic_quotes - это полный сарай

сейчас, к сожалению, у меня это пока единственный вариант.
это не хостинг, а ТТУшный сервер hektor
там я делаю свою дипломную работу. я работал до этого с 10-11 хостингами и нигде с такой проблемой не сталкивался
поэтому удивился и испугался :) на какой такой радости данные сами по себе прослешиваются
  • 0

#11 Акей

Акей

    Смотрит свысока

  • Постоялец
  • 2 134 сообщений

Отправлено 03 Май 2007 - 15:24

В данной ситуации у меня есть другой совет - сменить хостинг, ибо хостинг, где включен magic_quotes - это полный сарай smile.gif Скоро их вообще запретят!


Да, запретят в 6м ПХП.
Но! На хостингах никогда(до ПХП 6) не запретят (по дифолту) мэжик квотс. Просто потому что написанные непонимаюшими эти особенности людьми скрипты можно будет моментально хакнуть SQL инъекцией. А так - хоть какая-то защита.
Те кто понимает в чем дело, смогут либо фунцией очистить поступающие переменные, либо в .htaccess поставить сооствествуюшее значение конфигурации пхп.
  • 0

#12 Vladson

Vladson

    XTGamers.com

  • Постоялец
  • 1 921 сообщений
  • Откуда:Эстония, Таллинн

Отправлено 03 Май 2007 - 15:50

разработчик на пхп должен быть параноиком

Да не паранойя это, это просто нормальный взгляд на вещи, если есть скрипт то он должен делать то для чего предназначен, а если у него будут "дополнительные функции" (проще говоря бэкдоры) способные навредить то "это не есть хорошо"...

Многие думают что написание кода это всё что нужно, между тем на написание кода должно уходить не более 25% времени/средств/нервов затраченных на продукт...
(Проектирование и тестирование неотьемлемая часть любого качественного продукта)
  • 0
Один Владсон может за...ать всех, кроме себя самого. Два Владсона могли бы за...ать абсолютно кого угодно, но Владсон единственный и неповторимый. ©Vladson

Вы либо способны перелопатить тонны информации и отсеять лишнее, либо программистом не будете. ©Psih

Не вазелин, а бизнес-гель ©Avagraen