Конструкция if. Десять раз

Platon_82

Новичок
Конструкция if. Десять раз

Подскажите пожалуйста
У меня при добавлении в базу данных проходит 10 проверок на валидность ввожимых данных приблизительно так:
PHP:
if($val_1 != 0)
{
  if($val_2 != 0
    {
       ............ так 10 вложеных ифов
             if($val_10 != 0 )
                {
                    //  insert into database
                 }
              else
                 {
                     $mess_1=10;

                  }
    }
  else
    {
       $mess_1=2;
    }
}
else
{
$mess_1=1;
}
Знаю что иф работает не очень быстро а тут аж 10 раз. Можна ли как-то обойтись без него?
 

Platon_82

Новичок
Я серьезно. Если это юморной вопрос, то давай посмеемся вместе
 

Platon_82

Новичок
Не знаю.
Вобщем данные у меня приходят из формы. В форме они у меня проверяются яваскриптом и пока там все не ок то сабмита нет.
Решил перестраховаться и еще сдесь проверить еа не пустые ли значения.
Получается что в 99% сабмитах у меня условие в 11ифах будет true. И выходит что зря я так сервак нагружаю.
Вот и спрашиваю может можно как-то сделать по-другому?
 

Духовность™

Продвинутый новичок
сервак нагружаю
откуда ты такие слова то знаешь? ты программу по ссылке выше запускал? я запускал. Тясяча вложенных конструкций if обрабатывается за 0.0002 секунды. о какой нагрузке может идти речь?
 

phprus

Moderator
Команда форума
triumvirat
Ради интереса запустил. Получил время около 0.0001 с. :)

Platon_82
Знаю что иф работает не очень быстро а тут аж 10 раз. Можна ли как-то обойтись без него?
10 вложенных ифов это ошибка проектирования кода ибо такая вложенность всегда не обоснована.
 

Platon_82

Новичок
Автор оригинала: phprus
triumvirat
Ради интереса запустил. Получил время около 0.0001 с. :)

Platon_82

10 вложенных ифов это ошибка проектирования кода ибо такая вложенность всегда не обоснована.
А как тогда проверить форму на то не пустые ли поля отправил юзер?
 

Фанат

oncle terrible
Команда форума
Platon_82
Зачем их вкладывать друг в друга?
почему нельзя подряд написать?

-~{}~ 26.01.08 20:22:

И выходит что зря я так сервак нагружаю.
ооооо. это серьёзно.
Платон. Ты можешь выслушать меня внимательно, ни на что не отвлекаясь? Не пробежать глазами за пол-секунды, а сесть, и вдумчиво прочитать, что я скажу?
 

berkut

Новичок
PHP:
$fields_map = array('country', 'text', 'region', 'city');
$error = false;
foreach ($fields_map as $v) {
    if ($$v == '') { //$_POST[$v] == ''
        $error = true;
        break;
    }
}
if (!$error) {
    //УРРА. пишу в базу
}
но реально это работает медленее чем 10 ифоф
 

phprus

Moderator
Команда форума
Platon_82
Кстати а про логические операторы типа И, ИЛИ ты что-нибуть слышал?
 

WP

^_^
> Получается что в 99% сабмитах у меня условие в 11ифах будет true. И выходит что зря я так сервак нагружаю.
Логика на грани фантастики.
 

Фанат

oncle terrible
Команда форума
наоборот. каждый ваяет свое.
просто не на том, разумеется, уровне, который у автора топика.
 

Bakti9rov

!*|=?
это еще ниче... в одном проекте было - блоки аж за экран в несколько раз :D уходили... правда это был C#
 

dark-demon

d(^-^)b
Bakti9rov, это основной недостаток структурного программирования :) который обходится более активным использованием переменных.
 
Сверху