Всем привет! Как сделать отправку формы на разные URL исходя из отмеченных чек-боксов. У меня получилось это реализовать, только с 1 чек-боксом. Но если добавить второй. То php не распознает пришедшие данные, как надо. **Задача:** Как сделать, чтобы перенаправление было на 4 разных URL исходя из отмеченной комбинации чек-бокса у кнопки. 1) Отправка на 1 URL при чекбоксе 1 2) Отправка на 2 URL при чекбоксе 2 3) Отправка на 3 URL при чекбоксе 1 и 2 4) Отправка на 4 URL без отм. чекбоксов HTML Код (Text): <!-- begin snippet: js hide: false console: true babel: false --> <!-- language: lang-html --> <form class="form-horizontal" action="http://URL/bamp/bump1.php" method="post"> <fieldset> <!-- Form Name --> <legend>PARAMETR</legend> <!-- Multiple Checkboxes --> <div class="form-group"> <label class="col-md-4 control-label" for="checkboxes">form</label> <div class="col-md-4"> <!-- CHECK-BOX1 --> <div class="checkbox"> <label for="checkboxes1"> <input type="checkbox" name="checkboxes1" id="checkboxes1" value="1"> checkboxes1 </label> </div> <!-- CHECK-BOX2 --> <div class="checkbox"> <label for="checkboxes2"> <input type="checkbox" name="checkboxes2" id="checkboxes2" value="2"> checkboxes2 </label> </div> </div> </div> <!-- Button --> <div class="form-group"> <label class="col-md-4 control-label" for="singlebutton"> </label> <div class="col-md-4"> <button id="singlebutton" name="singlebutton" class="btn btn-primary">START!</button> </div> </div> </fieldset> </form> <!-- end snippet --> **PHP** И вот мой PHP файл, который принимает эту форму для последующего редиректа. Код (Text): <?php if($_POST['checkboxes1'] == 1 ){ header("Location: http://URL/index1.html"); } if($_POST['checkboxes2'] == 2){ header("Location: http://URL/index2.html"); } else { header("Location: http://URL/index3.html"); } ?> Заранее спасибо за любую помощь и подсказки.
с чего это взяли? данные приходят .. просто вы их не умеете готовить можно сделать так: PHP: $links = [ 0 => 'url0.html', // ни одного 1 => 'url1.html', // только первый 2 => 'url2.html', // только второй 3 => 'url3.html', // оба выбраны ]; $key = intval($_POST['checkboxes1'])+intval($_POST['checkboxes2']); header("Location: http://URL/{$links[$key]}"); exit()
если будет более двух чекбоксов - следует использовать в качестве значений степени двоек 1, 2, 4, 8, 16 итд тогда сумма значений при различных комбинациях никогда не будут пересекаться