Answer the question
In order to leave comments, you need to log in
Select form with multiple selection, processing result?
Good day! I got stuck with a school task, or rather a multiple choice on the form and processing the result ..
Or rather, I can’t get and process the multiple choice ...
I do this
json file
<?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.' звонка.';
Answer the question
In order to leave comments, you need to log in
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question