Доброго дня! Заплелся я с школьной задачей, а точнее множественный выбор на форме и обработка результата..
А точнее не получается получить и обработать множественный выбор...
Делаю так
файл json
json[{"Дата":"2022-02-11 17:59:18 ","День":"2022-02-11","Время":"17:59:18","Внутренний номер":"873","Оператор":"Билайн","Регион":"Республика Татарстан","Набранный номер":"+796777777777","Провайдер ID":"2952","Группа маршрута ID":"outrt-10","MNP Оператор":null,"MNP Оператор ID":null},
{"Дата":"2022-02-11 17:59:35 ","День":"2022-02-11","Время":"17:59:35","Внутренний номер":"871","Оператор":"Мегафон","Регион":"Курская область","Набранный номер":"+79207777777","Провайдер ID":"2961","Группа маршрута ID":"outrt-11","MNP Оператор":null,"MNP Оператор ID":null},
{"Дата":"2022-02-11 17:59:46 ","День":"2022-02-11","Время":"17:59:46","Внутренний номер":"725","Оператор":"Билайн","Регион":"Москва и Московская область","Набранный номер":"+79777777777","Провайдер ID":"2952","Группа маршрута ID":"outrt-10","MNP Оператор":null,"MNP Оператор ID":null}]
Код
php<?php
$Json = file_get_contents('json.json');
$array = json_decode($Json,true);
<form action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']) ?>" method="post">
<div>
<label for="operator">Оператор:</label>
<select name="operator" id="operator" multiple>
<option value="" hidden="">--- Выбери оператора ---</option>
<option value="Билайн">Билайн</option>
<option value="МТС">МТС</option>
<option value="Мегафон">Мегафон</option>
<option value="Yota">Yota</option>
</select>
<!-- <button type="submit">Показать</button> -->
</div>
<div>
<label for="intnum">Внутренний номер:</label>
<select name="intnum" id="intnum">
<option value="" hidden="">--- Выбери номер ---</option>
<option value="768">768</option>
<option value="769">769</option>
<option value="771">771</option>
</select>
<!-- <button type="submit">Показать</button> -->
</div>
<div>
<label for="outrt">Группа маршрута:</label>
<select name="outrt" id="outrt">
<option value="" hidden="">--- Выбери группу ---</option>
<option value="outrt-12">outrt-12</option>
<option value="outrt-13">outrt-13</option>
</select>
<!-- <button type="submit">Показать</button> -->
</div>
<div>
<form action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']) ?>" method="post">
Начиная с :
<input type="date" name="dateFrom" value="<?php echo date('Y-m-d'); ?>" />
По:
<input type="date" name="dateTo" value="<?php echo date('Y-m-d'); ?>" />
<input type="submit" name="submit" value="Показать"/>
</form>
</div>
</form>
<form onsubmit="document.getElementById('submitButton').disabled = true">
<input id="submitButton" type="submit" value="Сбросить форму"/>
</form>
<br>
<?php
$operator = filter_input(INPUT_POST, 'operator', FILTER_SANITIZE_STRING);
$intnum = filter_input(INPUT_POST, 'intnum', FILTER_SANITIZE_STRING);
$outrt = filter_input(INPUT_POST, 'outrt', FILTER_SANITIZE_STRING);
$dateFrom = filter_input(INPUT_POST, 'dateFrom', FILTER_SANITIZE_STRING);
$dateTo = filter_input(INPUT_POST, 'dateTo', FILTER_SANITIZE_STRING);
foreach($array as $key => $one)
{
if (($one['Оператор'] == $operator) && ($one['День'] >= $dateFrom && $one['День'] <= $dateTo)) {
echo 'Дата: '.$one['Дата'].', Оператор: '.$one['Оператор'].', Внутренний номер: '.$one['Внутренний номер'].', Группа маршрута ID: '.$one['Группа маршрута ID'].'<br>';
$count++;
} elseif (($one['Внутренний номер'] == $intnum) && ($one['День'] >= $dateFrom && $one['День'] <= $dateTo)){
echo 'Дата: '.$one['Дата'].', Оператор: '.$one['Оператор'].', Внутренний номер: '.$one['Внутренний номер'].', Группа маршрута ID: '.$one['Группа маршрута ID'].'<br>';
$count++;
} elseif (($one['Группа маршрута ID'] == $outrt) && ($one['День'] >= $dateFrom && $one['День'] <= $dateTo)) {
echo 'Дата: '.$one['Дата'].', Оператор: '.$one['Оператор'].', Внутренний номер: '.$one['Внутренний номер'].', Группа маршрута ID: '.$one['Группа маршрута ID'].'<br>';
$count++;
} /*elseif ($one['День'] >= $dateFrom && $one['День'] <= $dateTo){
echo 'Дата: '.$one['Дата'].', Оператор: '.$one['Оператор'].', Внутренний номер: '.$one['Внутренний номер'].', Группа маршрута ID: '.$one['Группа маршрута ID'].'<br>';
$count++;
}*/
}
echo '<br>'.'Совершено: '.$count.' звонка.';
Добавляю к name="operator[]" но ломается вывод...
Никак не прикручу цикл
Замысел выбирать несколько operator и выводить эти данные с учетом выбранных дат...