public function update(){        $room=m('room');//         $room_id=$_get['room_id'];        $room_id=$_post['room_id'];               $roominfo['room_id']=$_post['room_id'];        $roominfo['room_type']=$_post['room_type'];        $roominfo['room_status']=$_post['room_status'];        $roominfo['room_area']=$_post['room_area'];        $roominfo['room_cost']=$_post['room_cost'];        $roominfo['description']=$_post['description'];                 print_r($roominfo);//         $room->where(room_id=$room_id)->save($roominfo);                          echo ;//          $this->redirect(showroom);      }
我的修改函数代码如上,打印了$room_info对象的值,也确实是修改过的,但是为什么执行之后数据库的数据还是没有改变。请问这是为什么?
                                                                                                                                                                                                 回复内容:                                                                                          public function update(){        $room=m('room');//         $room_id=$_get['room_id'];        $room_id=$_post['room_id'];               $roominfo['room_id']=$_post['room_id'];        $roominfo['room_type']=$_post['room_type'];        $roominfo['room_status']=$_post['room_status'];        $roominfo['room_area']=$_post['room_area'];        $roominfo['room_cost']=$_post['room_cost'];        $roominfo['description']=$_post['description'];                 print_r($roominfo);//         $room->where(room_id=$room_id)->save($roominfo);                          echo ;//          $this->redirect(showroom);      }
我的修改函数代码如上,打印了$room_info对象的值,也确实是修改过的,但是为什么执行之后数据库的数据还是没有改变。请问这是为什么?
//         $room->where(room_id=$room_id)->save($roominfo);
前面的注释符号是不是要去掉。。。
另外 : room_id=$room_id  ,楼主可以百度下sql注入。
m()->getlastsql()
看着应该是thinkphp,提几点意见。
不要直接用$_post或者用$_get,以防止sql注入,应该用i函数。
调试sql应该用$obj->getlastsql()方法。
输出对象应用自带的dump函数。
确定代码没问题的话,也可能是你数据库问题,比如你的账号没有写权限,你操作的是读库,不能执行更新操作等,先排查下哪里问题吧
如果可能的话打印下m()->getlastsql()
如果你的room_id为表主键那么可以用以下代码
$roominfo['room_id']=$_post['room_id'];$roominfo['room_type']=$_post['room_type'];$roominfo['room_status']=$_post['room_status'];$roominfo['room_area']=$_post['room_area'];$roominfo['room_cost']=$_post['room_cost'];$roominfo['description']=$_post['description'];$room->save($roominfo);
$room->where(room_id=.$room_id)->save($roominfo);
把注视放开试试呢
在$room_id下面添加这句话:$roominfo = $room->getbyid($room_id);
   
 
   