无法通过$ _GET和多行获取复选框的名称

时间:2016-07-19 11:23:07

标签: php mysql checkbox

enter image description here

我确实有上面图片中给出的选项。从每个选项中,您可以选择一个,或者我们可以限制您必须从每个选项中选择一个选项。

当我从每个选项中选择一个时,我没有插入该复选框的值。

<input name="pc<?php echo $mitemch_id; ?>" type="checkbox" value="<?php echo $mitemchch_id; ?>">

<font size="2"><?php echo $mitemch_enm; echo " KD: "; echo $mitemch_prit; ?></font>

在名称PC中,此<?php echo $mitemch_id; ?>是选项ID,如果选项1则值为1,依此类推。如何将名称放在$ _GET中以获取复选框上面给出的名称?

以下是我用来保存的方式:

$minsitID = mysql_real_escape_string($_POST['mitemID']);
$insitID  = mysql_real_escape_string($_POST['itemID']);
$inspr    = mysql_real_escape_string($_POST['op']);
$iqty     = mysql_real_escape_string($_POST['qty']);

$ses_mem    =   session_id();

mysql_query("
insert into temp_cart (item_id, price_id, qty, ses_mem) values (
'".$insitID."','".$inspr."','".$iqty."','".$ses_mem."'
)
");
$last_id = mysql_insert_id();

mysql_query("
insert into temp_choices (temp_id,  choice_id, item_id, ses_mem) values (
'$last_id','$minsitID','$insitID','$ses_mem'
)
");

我已尝试使用for循环但没有用的下面的代码。

for($i=0; $i < count($minsitID); $i++) {
    mysql_query("
    insert into temp_choices (temp_id,  choice_id, item_id, ses_mem) values (
    '$last_id','$minsitID[$i]','$insitID','$ses_mem'
    )
    ");
}

2 个答案:

答案 0 :(得分:0)

更改

<input name="pc<?php echo $mitemch_id; ?>" type="checkbox" value="<?php echo $mitemchch_id; ?>">

<input name="pc[]" type="checkbox" value="<?php echo $mitemchch_id; ?>">

<强> popup_item_submit_process.php

$pc = $_POST['pc'];
$totalPC = sizeof($pc);
for($i=0;$i<$totalPC;$i++){
  $selectedPC = $pc[$i];

  //Now use this `$selectedPC` to enter into database table.
  // Use your query here with appropriate column name/values along with `$selectedPC`.

}

答案 1 :(得分:0)

尝试了很多,我得到它如下工作,现在它插入多个名称和不同的值,以选择多个复选框或单选按钮

foreach($_POST as $instant => $value) {
  if (strpos($instant, 'choices') === 0) {
    $books[$instant] = $value;
mysql_query("
insert into temp_choices (temp_id, item_id, choice_id, ses_mem) values (
'".$last_id."','".$insitID."','".$books[$instant]."','".$ses_mem."'
)
");
}}