0

我使用自己的表格将一些值放入MySQL数据库中。但是,我不知道如何使用选择框。

我有八个可以检查的选择框,并在此基础上将其写入 8 个不同的表。因此,如果选中选项 1、3 和 6,我必须写入这些表。

下面的代码将它输出到屏幕上,但我的数组每次看起来都不一样,因为我每次都有不同的选择。

<?php
$categorie= array_values($_POST['categorie']);

foreach($categorie as $key => $value)
{
  echo $value . "<br/>";
}
?>

对我来说最好的方法是什么?将每个值放在一个变量中并使用 if-else 语句还是有更好的解决方案?

4

2 回答 2

0

我会考虑在你的 for 循环中使用 switch 语句。这要求该值是数字,因此 $_POST['category'] 必须是一个数字数组。然后你可以这样做:

<?php
    $category= array_values($_POST['category']);

    foreach($category as $key => $value){
        switch($value){
            case 1: mysqli_query("Insert to table 1 here"); break;
            case 2: mysqli_query("Insert to table 2 here"); break;
            case 3: mysqli_query("Insert to table 3 here"); break;
            case 4: mysqli_query("Insert to table 4 here"); break;
            case 5: mysqli_query("Insert to table 5 here"); break;
            case 6: mysqli_query("Insert to table 6 here"); break;
            case 7: mysqli_query("Insert to table 7 here"); break;
            case 8: mysqli_query("Insert to table 8 here"); break;
        }
    }
?>
于 2013-08-15T09:37:08.503 回答
0

假设您在一个表单中有两个选择框:

<form method="post" action="/file.php">
  <select name="fruit">
    <option value="apple">Apple</option>
  </select>
  <select name="vegetable">
    <option value="broccoli">Broccoli</option>
  </select>
</form>

此表单将值发布到 file.php,如下所示:

<?php
foreach($_POST as $param => $value)
  switch($param) {
    case 'fruit':
      // $value is your fruit
      break;
    case 'vegetable':
      // $value is your vegetable
      break;
  }
于 2013-08-15T09:39:02.640 回答