我用一个session变量存储物品ID值,用@隔开,然后$array=explode("@",$_SESSION['id']);
然后用循环获取表单的值
for($i=0;$i<count($array);$i++){
$val=$_POST['num_'.$array[$i]];
}
这样好像不可以啊,用$_POST['num_$array[$i]']也不可以,应该怎么获取?
<input type="text" name="num_<?php echo $row['b_id'];>"> //num_后面跟的是物品ID
然后用循环获取表单的值
for($i=0;$i<count($array);$i++){
$val=$_POST['num_'.$array[$i]];
}
这样好像不可以啊,用$_POST['num_$array[$i]']也不可以,应该怎么获取?
<input type="text" name="num_<?php echo $row['b_id'];>"> //num_后面跟的是物品ID
改成
<input type="text" name="num_<?php echo $row['b_id'];?>">
不明白 你session中保存的已经得物品的ID了,为啥还要用这个ID去POST中取一次?而且,你这样获取不觉得有问题么?
而且你为何要用session来保存??
然后再用Post来取,不明白。。
1.我用$_SESSION['cart']存放物品ID,用@隔开,如1@8@4@16@这样子
2.当我切换到购物车界面后,将$_SESSION['cart']分解获得物品ID,如$array=explode("@",$_SESSION['cart']),这样就获得了物品的ID,如$array[0]=1,$array[1]=8等等
3.然后下面是一个表格,用来显示购物车信息,具体不写了,写个关键要解决的地方
<input type="text" name="num_<?php echo $array[$i]?>">
上面这个是个文本框,用来显示要购买的物品数量,每个商品的文本框name值不一样,如num_1,num_8等
4.现在我要把购物车信息存到数据库里面去了,那我就要获取商品数量,那用$_POST[]来获取,一般来说就是$_POST['某个name值'],现在我要按顺序获取每个商品的数量,我就想问$_POST['num_'???]问号部分怎么写可能我解释了大家还是不明白。。个郁闷了
这个也是循环的吗?你这样试下,看行不
$val=$_POST[“'num_'.$array[$i]”];
无非就是把id取出,
$ids = explode("@",$_SESSION['cart']);
$posts = array();
foreach($ids as $key => $value){
$posts[] = $_POST["num_$value"]; //这样可以获取所有的数量了
}
print_r($array);//打印出来看看
for($i=0;$i<count($array);$i++){
if ($array[$i]!=""){ //如果是1@8@4@16@这个结构 循环到最好一个是空值 得到num_ 需要处理下
$key = 'num_'.$array[$i];
echo $key."<br>";//打印出来看看
$val[]=$_POST[$key];
}
}
?>
$abc='num_'.$value;
$posts[] = $_POST[$abc];
看打印出来的是什么,根据结果调试.