您好,欢迎访问一九零五行业门户网

THINKPHP add问题

请教各位大牛一个thinkphp问题:
问题描述如下:
我需要从页面上传递参数id过来,并且将id值写入到数据库中,但过程中发现,在submit的时候该参数被置为null值导致insert 不仅数据库。
其中$viewpoint_id得到的值为空
代码如下:
public function food_add() { $food=m('food'); $foodtype=m(foodtype); if (isset($_post['save'])) { //判断是否已经添加了菜品 $viewpoint_id= $_get['id']; $id=$_post['names']; $this->food_add2($id,$viewpoint_id); } else { // 显示数据 $lists = $food->field(food.name,food.food_type,food.price,food.id,manager.path) ->table($food->gettablename(). food) ->join(m(file_manager)->gettablename(). manager on food.pic = manager.id) ->page($page)->order('food.id desc')->select(); foreach ($lists as $k => $v) { $lists[$k]['path'] = __root__.$lists[$k]['path']; $lists[$k]['type_name'] = $foodtype->where(id={$v['food_type']})->getfield('type_name'); } $this->assign('lists', $lists); $this->display('food_add'); } }public function food_add2($id,$vid){ $food=m('food'); $foodtype=m(foodtype); $fooddinner=m('viewpointdinner'); //获取foodid $food_id= implode(',' ,$_post['names']); $food_detail=$food->where(array('id'=>array('in',$food_id)))->select(); $fooddinner->create(); foreach ($food_detail as $k => $v) { $fooddinner->id = $food_detail[$k]['id']; $fooddinner->type = $food_detail[$k]['food_type']; $fooddinner->names = $food_detail[$k]['name']; $fooddinner->price = $food_detail[$k]['price']; $fooddinner->pic = $food_detail[$k]['pic']; $fooddinner->create_time = strtotime(date('y-m-d h:i:s')); $fooddinner->sort=1; //排序 $fooddinner->is_low=1; //低消 $fooddinner->viewpoint_id=$vid; $fooddinner->add(); } }
尝试过在外层获取$viewpoint_id,可以获取值,但到了foreache时,就为空了,请问这个问题怎么处理呢?
回复讨论(解决方案) //判断是否已经添加了菜品 $viewpoint_id= $_get['id']; $id=$_post['names'];
怎么一个get一个post
提交的方式是啥?
post?
@namelesswei @shengli881026 感谢两位回复,提交是post提交,$_get['id']是获取从其他页面传过来的参数
传参链接如下: 添加低消
你的 $_post['save'] 和 $_get['id'] 分属于两个不同的来源
所以这两个值不可能同时存在
@xuzuning 请问如何处理呢?
表单有 action 属性,你的 id 可写在它上面
一个在表单里应隐藏控件传递,不过就不是 $_get['id'] 而是 $_post['id'] 了
@xuzuning  谢谢你的回复,已经解决了我的问题。也感谢@namelesswei @shengli881026的回复。
其它类似信息

推荐信息