0

我想在while循环中传递一组复选框中的复选框。请帮我。

这是我的代码:

$Q="
  select
    id,
    name 
  from
    dwincperiod 
  where
    `bid`='$bid' 
    and (
      (
        month(`fromdate`)='$month' 
        and year(`fromdate`)='$year'
      ) 
      or (
        month(`fromdate`)='$mon' 
        and year(`fromdate`)='$year'
      ) 
      or (
        month(`fromdate`)='$mnt' 
        and year(`fromdate`)='$year'
      )
    )";

$R = mysql_query($Q);
while ($ROW = mysql_fetch_array($R)) {
  $i++;
  $id   = $ROW[id];
  $name = $ROW[name];
  echo '<input type="checkbox" name="incperiod' . $i . '" value="' . $id . '">' . $name . "<br/>";
  echo '<input type="hidden" name="id" value="' . $id . '">';
}
4

1 回答 1

1

对于页面让用户选择:

echo "<label><input type='checkbox' name='incpreiod[]' value='{$id}' />{$name}</label><br />";

用于获取用户选项

print_r($_POST['incpreiod']);

$query = "SELECT * FROM dwincperiod WHERE id IN ({$_POST['incpreiod']}) and bid='{$bid}'";
$resultset = mysql_query($query);
while ($row = mysql_fetch_array($resultset)) {
    ...
}

评论

用于以[]数组格式传递数据 PS:为防止 SQL 注入,我强烈建议您不要将数据传递到查询字符串中。

于 2013-10-21T06:26:36.247 回答