| |
|
|
| | Уважаемые господа!
Подскажите как можно реализовать такую вот конструкцию на PHP:
n1 and n2 = true
n1 and n3 = false
n2 and n3 = false
n3 = true
Возможно при помощи какого нибудь цикла?
Я только начал изучать php и толком мало что понял. Помогите разобраться, пожалуйста! | |
| |
|
|
| |
|
|
| |
для: beli
(29.05.2007 в 17:05)
| | | это не возможно в принципе | |
| |
|
|
| |
|
|
| |
для: CrazyAngel
(29.05.2007 в 17:08)
| | | Значит ситуация такая: имеется некий скрипт при помощи которого резервируется помещение целиком или одна из его частей, те.
n1 = одна часть помещения
n2 = вторая часть помещения
n3 = помещение целиком
можно занять одновременно n1 и n2, но если хотя бы одна из частей занята то n3 уже нельзя занять. Все это привязано к определенному времени которое берется из бд.
Необходимо сделать так что бы при true появлялось предупреждение об ошибке.
Вот часть кода которая берёт значение из бд (parts - это и есть n1 ...3):
case "add":
$q_parts=($parts==3)?"(parts='1' or parts='2' or parts='3')":"parts='".$parts."'";
$errs=db_query($con, "select * from peregovor where office='".$when."' and ".$q_parts." and start_date='".$start_date."' and ((start_time<='".$start_time."' and end_time>='".$start_time."') or (start_time<='".$end_time."' and end_time>='".$end_time."'));");
if($errs){
$error=1;
break;
}
$subject="çàêàç ".$title."à íà ".$offices[$when];
$query="
insert into peregovor
(start_time, end_time, who, need, descrip, start_date, make, tech, cnt, more, office, parts, purpose)
values
('$start_time', '$end_time', $p, '$need', '$comment', '$start_date', '".serialize($make)."', '".serialize($tech)."', $cnt, '$more', '".$when."', '".$parts."', ".$purpose.")";
break; | |
| |
|
|
| |
|
|
| |
для: beli
(29.05.2007 в 17:16)
| | | n1 = число 0 или 0.5
n2 = число 0 или 0.5
n3 = число 0 или 1
n1 + n2 + n3 = проверяем, больше 1, значит нельзя. | |
| |
|
|
| |
|
|
| |
для: beli
(29.05.2007 в 17:16)
| | | Разделяйте ресурс на независимые части (у Вас - части помещения)
и распределяйте их независимо одну от других. | |
| |
|
|
| |
|
|
| |
для: Trianon
(29.05.2007 в 18:40)
| | | Можно представить это кодом? Просто я только начал вникать в PHP, да и скрипт вообще непонятно кто писал. | |
| |
|
|
| |
|
|
| |
для: beli
(30.05.2007 в 09:36)
| | | Может я чегото не понял, но помоему тут просто условие:
<?
error_reporting(E_ALL & ~E_NOTICE);
// $n1 = 1;
$n2 = 2;
$n3 = 3;
$s = "что то еще, если ни одно из условий не подходит";
if (!!$n1 && !!$n2) $s = "true для n1 и n2";
if (!!$n1 && !!$n3) $s = "false для n1 и n3";
if (!!$n2 && !!$n3) $s = "false для n2 и n3";
if (!$n1 && !$n2 && !!$n3) $s = "true для n3";
print $s;
?>
|
| |
| |
|
|
| |
|
|
| |
для: vbps
(30.05.2007 в 16:17)
| | | А как это можно увязать с этим кодом:
case "add":
$q_parts=($parts==3)?"(parts='1' or parts='2' or parts='3')":"parts='".$parts."'";
$errs=db_query($con, "select * from peregovor where office='".$when."' and ".$q_parts." and start_date='".$start_date."' and ((start_time<='".$start_time."' and end_time>='".$start_time."') or (start_time<='".$end_time."' and end_time>='".$end_time."'));");
if($errs){
$error=1;
break;
}
$subject="çàêàç ".$title."à íà ".$offices[$when];
$query="
insert into peregovor
(start_time, end_time, who, need, descrip, start_date, make, tech, cnt, more, office, parts, purpose)
values
('$start_time', '$end_time', $p, '$need', '$comment', '$start_date', '".serialize($make)."', '".serialize($tech)."', $cnt, '$more', '".$when."', '".$parts."', ".$purpose.")";
break; | |
| |
|
|
| |
|
|
| |
для: beli
(31.05.2007 в 10:56)
| | | Честно говоря я не совсем понял чего вы хотите добиться этим кодом.
замените $s на $parts, если $parts должен быть равен true или false уберите лишние строки.
и главное если $parts будет пустым произойдет ошибка при запросе к базе. | |
| |
|
|