提交循环之后的表单post不到字段名

#1 278086346

QQ截图20130407160230.jpg
<{foreach from=$$$$cglist item=value}> 



<{$$$$value.cg_id}>
<{$$$$value.cg_name}>
<{/foreach}>

  
代码是这个,但是每次修改了,只是得到id等于22,也就是最下面一个的ID,不能修改所有的排序,然后全部按我写的排序来更新表。
$$$$conditions=array('cg_id'=>$$$$this->spArgs('cg_id'));
$$$$px=array('cg_px'=>$$$$this->spArgs('cg_px'));
$$$$zz_category->update($$$$conditions,$$$$px);
$$$$this->success("排序成功!");

2013-04-07 16:05:52

#2 278086346

01.$conditions=array('cg_id'=>$this->spArgs('cg_id'));

02.$px=array('cg_px'=>$this->spArgs('cg_px'));

03.$zz_category->update($conditions,$px);

04.$this->success("排序成功!");


控制器代码是这个,上面的自动添加了好几个$$$

2013-04-07 16:07:20

#3 coolhpy

兄弟,,循环的位置放错啦!!!


<{foreach from=$$$$cglist item=value}>


<{$$$$value.cg_id}>
<{$$$$value.cg_name}>
<{/foreach}>

而且,你的table标签格式也不对啊,补下HTML吧

(为什么这么多美元?)

2013-04-07 16:16:50

#4 278086346

coolhpy 发表于 2013-4-7 16:16
兄弟,,循环的位置放错啦!!!
我就把主要的放上来看了,那些不全的是特意删除的,现在放下全部的,整体是这样
 
<{foreach from=$$$$cglist item=value}>



<{$$$$value.cg_id}>
<{$$$$value.cg_name}>
访问

添加子栏目
删除
修改


<{/foreach}>

  
但是还是不行的哦,只会修改最后一个ID的,而不是接受到所有的ID...美元这个是论坛自动生成的也

2013-04-07 16:29:00

#5 coolhpy

是你提交cg_px重名了的缘故,要用数组方式,如:cg_px[]

其实那个传ID的隐藏域都不需要的,可以这样:
[$value.cg_id]" value="<{$$$$value.cg_px}>" size="3" style="text-align: center;" id="cg_px"/>

controller 里面用 $_POST['cg_px'] 来接收,,就是你要的了

2013-04-07 16:49:56

#6 278086346

coolhpy 发表于 2013-4-7 16:49
是你提交cg_px重名了的缘故,要用数组方式,如:cg_px[]

其实那个传ID的隐藏域都不需要的,可以这样:
哥们,用了你的办法还是不行哦,而且我只提交了一个cg_px值呀
  你的办法不能判断出ID,那程序就不知道是更新哪个ID的cg_px值

2013-04-07 17:10:05

#7 278086346

coolhpy 发表于 2013-4-7 16:49
是你提交cg_px重名了的缘故,要用数组方式,如:cg_px[]

其实那个传ID的隐藏域都不需要的,可以这样:
cg_px[$value.cg_id] 接受到的始终是最后一个的ID

2013-04-07 17:26:03

#8 278086346

coolhpy 发表于 2013-4-7 16:49
是你提交cg_px重名了的缘故,要用数组方式,如:cg_px[]

其实那个传ID的隐藏域都不需要的,可以这样:
$a=$this->spArgs();
        dump($a);

结果始终接收的就是最后一个栏目的ID...求解

2013-04-07 17:53:09

#9 coolhpy

不好意思,写错了,应该是这样。

[<{$value.cg_id}>]" value="<{$value.cg_px}>" size="3" style="text-align: center;" id="cg_px"/>

2013-04-07 17:59:37

#10 jake

楼上正解

2013-04-07 21:08:20

#11 278086346

coolhpy 发表于 2013-4-7 17:59
不好意思,写错了,应该是这样。
{:soso_e181:}谢谢,可以了。

2013-04-08 09:13:54

#12 278086346

jake 发表于 2013-4-7 21:08
楼上正解
JAKE 还有个问题问下....不好意思哦{:soso_e101:}

Array(    [19] => 0    [20] => 0    [21] => 0    [25] => 0    [26] => 0    [14] => 0    [16] => 1    [18] => 0    [24] => 1)现在得到的是这样一个数组,然后我想update 这个条件和要修改的数据怎么取得呢?
$b=$_POST['cg_px'];
        dump($b[19]);

2013-04-08 10:57:35

#13 jake

foreach 一下,如果值大于0的,就根据key作为条件来update

2013-04-08 11:46:14

#14 278086346

jake 发表于 2013-4-8 11:46
foreach 一下,如果值大于0的,就根据key作为条件来update
function adminpx(){
$$$$zz_category=spClass("xll_category");
$$$$b=$$$$_POST['cg_px'];
// dump ($$$$b);
foreach ($$$$b as $$$$key => $$$$value) {
if($$$$value>0){
$$$$d=$$$$zz_category->update($$$$key,$$$$value);
dump ($$$$d);
}else{
echo "错了";
}
}
}
这样还是出不来呢。。。哪里出错了哦?{:soso_e154:}

2013-04-08 12:33:40

#15 278086346

jake 发表于 2013-4-8 11:46
foreach 一下,如果值大于0的,就根据key作为条件来update
结贴...已经可以了,谢谢。{:soso_e183:}

2013-04-08 13:34:48