大家好 现在是2周,我在寻找我的问题的答案,没有运气。希望somone可以帮助我
我有一个chackbox选项,我从数据库中调用
<form style="margin-top:-30px" method="POST" action="extradata.php">
<?php
$sql = "SELECT ext_id,ext_price,ext_name,ext_description FROM tbl_extra ORDER by ext_id ASC";
$result = mysql_query($sql) or trigger_error(mysql_error(),E_USER_ERROR);
$number = mysql_num_rows($result);
$i = 0;
while ($number > $i) {
$NA= mysql_result($result,$i,"ext_name");
$PR= mysql_result($result,$i,"ext_price");
print "<input type='checkbox' name='extra[]' value='$NA'></td>";
$i++;
}
?>
我要做的是将值传递给extradata.php
,其值为2
1。$NA
,
2。$PR
选中框后,将$NA
的值ex_tra
和$PR
的值ex_price
插入数据库
extradata.php
<?php
require_once 'library/config.php';
$id=$_POST['pd_id'];
$ssid=$_POST['ct_session_id'];
$total=$_POST['tot'];
$name=$_POST['basedes'];
$qty=$_POST['ct_qty'];
$extra_array = $_POST['extra'];
if ( $extra_array > "0" ) {
foreach ($extra_array as $one_extra) {
$source .= $one_extra.", "; }
$extra = substr($source, 0, -2);
} else {}
$result=mysql_query("INSERT INTO tbl_cart (pd_id, ct_qty, ct_session_id, ex_tra, ex_tra2, ex_price, ct_date) VALUES ('$id','$qty','$ssid','$extra','$name','$total', NOW())");
?>
最好的关注所有
答案 0 :(得分:2)
在一个变量中发送两个值肯定会变得混乱。我只是发送id并在extradata.php
中再次从数据库中获取相应的值。
如果你真的想要发送多个值,我会使用固定索引作为复选框(不是extra[]
而是extra[SOME_NUMBER]
并在其旁边添加一个隐藏字段(extra_pr[SOME_NUMBER]
?)到传递第二个值。
请注意,您必须使用固定索引作为未选中的复选框,不会发布,但所有隐藏字段都会发布。