Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: запарка со вложенными условиями

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: вложенные условия
Evgeniux
Отправлено: 01 Ноября, 2009 - 19:22:36
Post Id


Новичок


Покинул форум
Сообщений всего: 50
Дата рег-ции: Март 2009  


Помог: 0 раз(а)




Вечер добрый! подскажите, как лучше организовать конструкцию вложенных условий:
если существует id заказа, { тогда ->
если заказ заказан, то .......
если заказ не заказан, то ....
если заказ собран, то ...
если заказ не собран, то ....
если человек принявший заказ такой-то, то......
если человек другой, то показываем то-то.....
}
иначе
{

}
 
 Top
valenok Модератор
Отправлено: 01 Ноября, 2009 - 19:59:33
Post Id



Здесь могла бы быть ваша реклама


Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006  
Откуда: Israel


Помог: 3 раз(а)




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

если НЕ существует id - die();
убирает местами лишние "иначе"


-----
Truly yours, Sasha.
 
My status
 Top
Мелкий Супермодератор
Отправлено: 01 Ноября, 2009 - 20:01:20
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




как описали, так и делайте, через группу if.. else
если людей надо сравнивать несколько - тогда конструкцию switch логичнее для этого использовать.


-----
PostgreSQL DBA
 
 Top
OverNik
Отправлено: 01 Ноября, 2009 - 20:44:30
Post Id



Частый гость


Покинул форум
Сообщений всего: 182
Дата рег-ции: Янв. 2008  


Помог: 0 раз(а)




PHP:
скопировать код в буфер обмена
  1. if(isset($id) && isset($zakazan) && isset($sobran))
  2. {
  3.     if($sobran == "yes")
  4.     {
  5.  
  6.     }
  7.     else
  8.    {
  9.  
  10.    }
  11.    
  12.    if($zakazan == "yes")
  13.    {
  14.  
  15.    }
  16.    else
  17.   {
  18.  
  19.    }
  20. }
  21. //иначе
  22. else
  23. {
  24.  
  25. }
 
 Top
Evgeniux
Отправлено: 01 Ноября, 2009 - 21:12:01
Post Id


Новичок


Покинул форум
Сообщений всего: 50
Дата рег-ции: Март 2009  


Помог: 0 раз(а)




В результате нужно получить номер заказа, чтобы в зависимости от условий (заказан, не заказан и т.п), он отображался другим цветом (например) или появлялись сообщения типа "заказ не заказан" и т.п.
Спасибо за помощь.
Немного подумав, решил пойти другим путем, хотел чтобы менялся цвет самого заказа (текст надписи), и сделал, чтобы менялся цвет всей ячейки (<td>) с помощью стилей.
не знаю, на сколько это вернее, но в глаза бросается лучше.
 
 Top
OverNik
Отправлено: 02 Ноября, 2009 - 01:17:03
Post Id



Частый гость


Покинул форум
Сообщений всего: 182
Дата рег-ции: Янв. 2008  


Помог: 0 раз(а)




сделай таблицу с такими ичейками
id, productId, userId, status
статус создавай с значениям к примеру int - число. если будет 0 - то товар на заказ не подтвержден, если 1 то подтвержден и тд. UserId будет говорит кто купил даный товар, с таблици user можна так же взять колонку "skidka" в которой будет указана к примеру скиндка даного покупателя на которую будет умножатся сумма продукта (productId). тут совсем все просто. нужно только создать несколько баз, в моем примере функционирует 3 таблици (user, product, zakazy)
 
 Top
Evgeniux
Отправлено: 02 Ноября, 2009 - 20:07:37
Post Id


Новичок


Покинул форум
Сообщений всего: 50
Дата рег-ции: Март 2009  


Помог: 0 раз(а)




да, тоже неплохой вариант, но у меня специфика базы заказов немного другая, но суть я уловил. Приму на заметку! Радость
 
 Top
lolo
Отправлено: 03 Ноября, 2009 - 10:24:09
Post Id


Новичок


Покинул форум
Сообщений всего: 7
Дата рег-ции: Окт. 2009  
Откуда: Москва


Помог: 0 раз(а)




OverNik пишет:
if(isset($id) ....

isset проверяет, установлена ли переменная. В этом случае если $id = 0, то условие будет считаться соблюденным. Если у вас не допускаются нулевые id'шники, то лучше либо использовать empty при проверке id, либо одновременно проверять значение id: if(isset($id) && (int)$id (если интовый айдишник) ...
empty будет удобнее, имхо (не генерирует notice, если переменная вообще не установлена, и одновременно проверяет, что она не пустая)
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB