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
Форумы портала PHP.SU :: Версия для печати :: запарка со вложенными условиями
Форумы портала PHP.SU » PHP » Программирование на PHP » запарка со вложенными условиями

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

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

}
2. valenok - 01 Ноября, 2009 - 19:59:33 - перейти к сообщению
Я правда не вижу что именно ты хочешь в результате получить, но тем не менее я бы некоторыми местами поменял условия на

если НЕ существует id - die();
убирает местами лишние "иначе"
3. Мелкий - 01 Ноября, 2009 - 20:01:20 - перейти к сообщению
как описали, так и делайте, через группу if.. else
если людей надо сравнивать несколько - тогда конструкцию switch логичнее для этого использовать.
4. OverNik - 01 Ноября, 2009 - 20:44:30 - перейти к сообщению
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. }
5. Evgeniux - 01 Ноября, 2009 - 21:12:01 - перейти к сообщению
В результате нужно получить номер заказа, чтобы в зависимости от условий (заказан, не заказан и т.п), он отображался другим цветом (например) или появлялись сообщения типа "заказ не заказан" и т.п.
Спасибо за помощь.
Немного подумав, решил пойти другим путем, хотел чтобы менялся цвет самого заказа (текст надписи), и сделал, чтобы менялся цвет всей ячейки (<td>) с помощью стилей.
не знаю, на сколько это вернее, но в глаза бросается лучше.
6. OverNik - 02 Ноября, 2009 - 01:17:03 - перейти к сообщению
сделай таблицу с такими ичейками
id, productId, userId, status
статус создавай с значениям к примеру int - число. если будет 0 - то товар на заказ не подтвержден, если 1 то подтвержден и тд. UserId будет говорит кто купил даный товар, с таблици user можна так же взять колонку "skidka" в которой будет указана к примеру скиндка даного покупателя на которую будет умножатся сумма продукта (productId). тут совсем все просто. нужно только создать несколько баз, в моем примере функционирует 3 таблици (user, product, zakazy)
7. Evgeniux - 02 Ноября, 2009 - 20:07:37 - перейти к сообщению
да, тоже неплохой вариант, но у меня специфика базы заказов немного другая, но суть я уловил. Приму на заметку! Радость
8. lolo - 03 Ноября, 2009 - 10:24:09 - перейти к сообщению
OverNik пишет:
if(isset($id) ....

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

 

Powered by ExBB FM 1.0 RC1