Что делать с данными, приходящими от пользователя?

Статус
В этой теме нельзя размещать новые ответы.

sakon

П..и.н..ок
master_x
А никто и не говорит, что нужно применять htmlspecialchars перед вставкой в базу.
 

_RVK_

Новичок
А никто и не говорит, что нужно применять htmlspecialchars перед вставкой в базу
Но многие это делают:
PHP:
$values['comment'] = htmlspecialchars(strip_tags(trim(substr($_POST['comment'], 0, 2000))), ENT_QUOTES);
Как пример :)
 

master_x

Pitavale XXI wieku
_RVK_
ИМХО это очень неправильно. Хотя смотря где, если это общедоступный блог и html в комментах запрещен... то можно и применять htmlspecialchars... однако как мне кажется лучше просто предупредить пользователя, что этого делать нельзя, т.е. проверить поступающие данные.
 

SiMM

Новичок
> Но многие это делают
И какой смысл в это вкладывают?
А вообще - не надо вестись за многими - надо думать своей головой и исходить из целесообразности применительно к решаемой задаче.

> если это общедоступный блог и html в комментах запрещен... то можно и применять htmlspecialchars
Но почему при вводе, а не при выводе?
 

_RVK_

Новичок
SiMM
Я спрашиваю совета не для себя. Я то уверен что обрабатывать данные нужно при выводе. Но не для всех, к сожалению, это ясно. Эта тема создана для того, что бы прояснить ситуацию, и выработать правильное мнение.
 

SiMM

Новичок
_RVK_, ну я собственно спрашиваю, чем это аргументируется теми, кто так делает. И это необязательно ты :) Собственно второй мой вопрос именно поэтому и прозвучал.
 

master_x

Pitavale XXI wieku
SiMM
Но почему при вводе, а не при выводе?
там была вторая часть высказывания и я сказал, что так делать нельзя и лучше делать по-другому. Т.е.нельзя использовать htmlspecialchars при вводе а лучше-
однако как мне кажется лучше просто предупредить пользователя, что этого делать нельзя, т.е. проверить поступающие данные.
 

_RVK_

Новичок
SiMM
Аргумент что так мы 1 раз преобразовываем, а так придется каждый раз/
 

Screjet

Новичок
Чтото прочитал топик, но так и не понял: какова цель делать несколько раз одно и тоже, когда это можно сделать один раз?
Ктото считает, что существуют "универсальные данные"?
В чем суть?
 

master_x

Pitavale XXI wieku
Screjet
при этом получится, что ты положишь в базу не первоисточник а данные, которые ТЫ ИЗМЕНИЛ и будешь хранить ИЗМЕНЕННЫЕ данные, которые, быть может ты сможешь восстановить до первоначального значения а может и нет.
 

svetasmirnova

маленький монстрик
master_x
>данные, которые, быть может ты сможешь восстановить до первоначального значения а может и нет.

А оно в самом деле *всегда* надо? По-моему скорость обработки для web-приложений может оказаться важнее.
 

_RVK_

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

-~{}~ 15.12.05 16:44:

>По-моему скорость обработки для web-приложений может оказаться важнее
svetasmirnova

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

Что правда такое бывает?

-~{}~ 15.12.05 16:46:

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

_RVK_

Новичок
Итак, кто выскажется против хрнения достоверной инфы в БД? Агрументировано, а не "я так хачу". Если довод в скорости, привидите пример когда это критично.
 

Screjet

Новичок
master_x
Есть способы для предотвращения обратного преобразования, но это из темы про безопастность :)

_RVK_
Выводить куда? для правки?
(чессно, еще не видел приложений, где правка данных происходит чаще, чем их отображение/вывод:))
 

Screjet

Новичок
_RVK_
По умолчанию экономлю процессор, он не такой резиновый как память или жесткий диск. Задач на экономию памяти/диска еще не попадалось. :)
 

_RVK_

Новичок
>Задач на экономию памяти/диска еще не попадалось

А по экономии процессора попадались? Расскажи плиз.
 

zarus

Хитрожопый макак
Автор оригинала: _RVK_
>Задач на экономию памяти/диска еще не попадалось

А по экономии процессора попадались? Расскажи плиз.
Сплошь и рядом. Когда уже нечего оптимизировать, или не хватает знаний по оптимизации. -> Начинаешь придираться к мелочам.
Сам попробуй открыть 1000+ одинаковых страниц одновременно на сервере с парсингом текста из базы и просто выводом уже пропарсенного текста. Посмотри процессорную загрузку и время, которое ушло на это дело. Разница будет заметна на глаз.

-~{}~ 15.12.05 17:39:

Автор оригинала: Screjet
_RVK_
По умолчанию экономлю процессор, он не такой резиновый как память или жесткий диск. Задач на экономию памяти/диска еще не попадалось. :)
Память тоже не резиновая, и ее тоже надо экономить, иначе медленный свап.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху