Организация логики проекта

Andreika

"PHP for nubies" reader
MasterSID
введенные пользователем зачем проверять?...
ЗЫ. почти всегда можно переписать тот же класс или скрипт так, что ему даже не понадобится их проверять второй раз
 

MasterSID

Новичок
тогда получится, что валидацию придется писать вне и для каждого метода добавления объекта она будет своя - тоже не правильно, т.к. чтобы потом что-то поменять придется копаться и искать все эти варианты валидации. удобнее когда то делается в одном месте. но если мы берем вариант а) то получится, что он проверят только один вариант ввода данных - веб-форму или что-то другое.

-~{}~ 30.08.05 12:41:

Фанат, да - в класс
Андрейка, как зачем???? ЧТобы небыло такого, когда ты в качетсве параметра передаешь $_POST['my_var'], а my_var при этом не существует
 

Andreika

"PHP for nubies" reader
MasterSID
это смертельно, что my_var не существует?

можно сделать чтобы не передавать my_var в функцию - например вызывать

foreach ($_POST ) {
$class->add($_POST[$p],$v);
}
 

Фанат

oncle terrible
Команда форума
а почему не написать метод валидате, или лоад_пост_дата который будет принимать пост, и валидатить его?
возвращая массив, который можно будет вставить на вход основному валидатору?

проблема ведь, на мой взгляд - только в том, что для валидации надо точно знать состав полей.
а этой информации 100% место в классе.
 

MasterSID

Новичок
Автор оригинала: Фанат
а почему не написать метод валидате, или лоад_пост_дата который будет принимать пост, и валидатить его?
возвращая массив, который можно будет вставить на вход основному валидатору?
Тогда придется предполагать, что в главный валидатор все данные попадут 100%, т.е. каждый мелкий валидатор типа лоад_пост_дата должен проверить это и если какой-то переменной нет - заменить ее пустым знаением. Я правильно понял?

-~{}~ 30.08.05 13:01:

Андрейка, получится дополнительный лишний метод класса, который будет аккумулировать переменные пост и строить на их основе sql запрос. Иногда это полезно, но в не всегда
 

Фанат

oncle terrible
Команда форума
ну наверное.
это ведь единственная твоя проблема - нотис на отсутствующую переменную (который может быть только в случае чекбокса, кстати, если я правильно помню)

правда, чем тебя не устроило передавать валидатору массив - я так и не понял
 

Фанат

oncle terrible
Команда форума
а почему тогда с тех пор, как тебе предложили массив, тут столько флейма развелось?
 

MasterSID

Новичок
проблема будет только в том, что если из программы добавить вызовом метода update и забыть указать одну из переменных - метод вернет true, хотя реально может получитьчя конструкция UPDATE table SET name='name' status= WHERE id=3

-~{}~ 30.08.05 13:10:

Ты про какой массив говоришь? Про который ты предложил или про Андрейкин?
 

Фанат

oncle terrible
Команда форума
хотя реально может получитьчя конструкция UPDATE table SET name='name' status= WHERE id=3
непонятно, почему.
метод что - не может проверить?
УЖ СПИСОК-ТО полей в базе, я надеюсь, ты не из массива переданных параметров берёшь?

Ты про какой массив говоришь?
$it->adduser($_POST);
$it->adduser($myarr);
 

MasterSID

Новичок
Все понял, ступил
одного валидатора будет даже достаточно

-~{}~ 30.08.05 13:27:

Топик можно заклоузить :)
 
Сверху