多个复选框提交url生成器php

时间:2012-05-29 23:33:36

标签: php forms checkbox

我的表单中有多个复选框,我想使用它们来生成网址。 一个例子:

  <form action="checkbox.php" method="post">
  <input type="checkbox" name="checkbox" value="a">
  <input type="checkbox" name="checkbox" value="b">
  <input type="checkbox" name="checkbox" value="c">
  <input type="checkbox" name="checkbox" value="d">
  <br>
  <br>
  <input type="submit" name="Submit" value="Submit">
  </form>

当用户按下提交按钮时,他必须重定向到生成的URL,如下所示:

  

www.domain.com/checkbox/a+b+c+d

根据用户的选择,应如上生成网址。 我该怎么拉这个?

2 个答案:

答案 0 :(得分:1)

在您的checkbox.php中,获取所有选中的复选框,创建所需的网址,然后使用header("Location: $url")将用户重定向到该网址。

HTML:

<input type="checkbox" name="checkbox[]" value="a" />
<input type="checkbox" name="checkbox[]" value="b" />
<input type="checkbox" name="checkbox[]" value="c" />
<input type="checkbox" name="checkbox[]" value="d" />

checkbox.php:

<?php

if ($_POST) {
  $url = "http://www.domain.com/checkbox/";
  $params = '';
  $checkBoxes = $_POST['checkbox'];
  foreach ($checkBoxes as $value) {
    $params .= $value;
    if ($value != $checkBoxes[count(checkBoxes) - 1])
      $params .= '+';
  }
  $url .= $params;
}

header("Location: $url");

答案 1 :(得分:0)

如果您不想使用AJAX

,这是一个php示例

复选框的顶部.php:

<?php

    if (isset($_POST['checkbox'])){
       $url = 'checkbox/' . implode('+',$_POST['checkbox']);

       header('Location:'. $url);
       die;    
    }


?>