我想检查用户是否输入了已经存在的时间(开始,结束),或者与foreach中的时间有冲突。
我试图将现有时间放入数组中,以检查来自数组中数据的新用户数据,但没有成功:I
if(isset($_POST['submit'])){
$mitarbeitername = $_POST['mitarbeiter'];
//echo "Organisator: " .$mitarbeitername;
$reservierungvon = $_POST['zeitstart'];
//echo "Von: " .$reservierungvon;
$reservierungbis = $_POST['zeitende'];
//echo "Bis: " .$reservierungbis;
}
foreach($value as $value) {
$startarray[] = $start = $value->Start->DateTime;($value);
}
$checkendtime = array();
foreach($value as $value) {
$endarray[] = $start = $value->End->DateTime;($value);
}
if ($reservierungvon == $startarray || $reservierungbis == $endarray || $reservierungvon < $startarray && $endarray > $reservierungbis) {
echo "conflict!";
} else {
echo "no conflict!";
}
这是即时获取现有会议时间的场所:
foreach ($result->value as & $value) {
$start = $value->Start->DateTime;
$start = substr($start, 11, -11);
$ende = $value->End->DateTime;
$ende = substr($ende, 11, -11);
$organisierer = $value->Organizer->EmailAddress->Name;
}
如果与现有会议没有任何冲突,则用户可以通过这种形式创建新会议:
<label for="psw"><br><b>Zeit der Reservierung:</b></label><br>
von <input type="time" name="timestart"> Uhr bis <input type="time" name="timeend"> Uhr <br>
如果能用用户的新时间检查出foreach时间,那将是很好的事情。
无论是否存在冲突,用户都会收到一条消息。这样他就可以纠正自己的时间。
感谢您的帮助! :)
答案 0 :(得分:0)
您需要检查循环或以下情况:
对于每个现有间隔(B):
如果其中任何一个为TRUE,则存在冲突,否则就没有冲突。