入门客AI创业平台(我带你入门,你带我飞行)
博文笔记

PHP ThinkPHP 数据修改

创建时间:2018-01-26 投稿人: 浏览次数:157


GoodsController.class.php(Goods商品控制器):

<?php
//后台商品控制器
namespace AdminController;
use ThinkController;
//Controller父类:ThinkPHP/Library/Think/Controller.class.php
class GoodsController extends Controller{
    //修改商品"update"是一个关键字,所以方法名不能是"update"。
    function upd1(){
        $goods = D("Goods");
        //AR方式实现数据修改,也可以通过关联数组的方式修改。
        //$goods -> goods_id = 156;
        $goods -> goods_name = "坚果手机";
        $goods -> goods_price = 3500;
        $goods -> goods_weight = 115;
        //$z = $goods -> save();   //在ThinkPHP框架中,不允许一次性修改所有记录信息,必须要有where()子句或者修改的数据中有主键ID值。(否则返回false)
        //$z = $goods->where("goods_id=167") -> save(); //返回受影响的记录行数。假如修改的数据和数据表中的原始数据相同,则返回0.
        
        $z = $goods->where("goods_id>=145 and goods_id<=149") -> save();  //where()
        //mysql数据库本身允许一次性修改全部记录信息,但现实需求中(ThinkPHP框架) 不能一次性修改数据表的全部记录信息
        dump($z);
        $this -> display();
    }
}
GoodsController.class.php(Goods商品控制器):
<?php
//后台商品控制器
namespace AdminController;
use ThinkController;
//Controller父类:ThinkPHP/Library/Think/Controller.class.php
class GoodsController extends Controller{
    //修改商品"update"是一个关键字,所以方法名不能是"update"。
    //参数$goods_id  是通过pathinfo方式传递的get变量名称。
	//http:网址/index.php/分组/控制器/操作方法/参数名1/值/参数名2/值 
	//www.localhost.com/shop/index.php/Admin/Goods/upd/goods_id/12   
    //以下upd 方法每次访问的时候必须传递goods_id参数信息
    function upd($goods_id){
        $goods = D("Goods");
        //两个逻辑:展示、收集
        if(!empty($_POST)){
            $data = $goods -> create();  //create()方法用于收集表单数据、验证表单数据等。此方式一般需要实例化GoodsModel,不使用D("Goods")函数。
            $z = $goods->save($data);  //修改。接收的表单数据中有主键ID字段的值,可以不用where()子句。
            if($z){
                $this ->redirect("showlist", array(), 2, "修改商品成功!");
            }else{
                $this ->redirect("upd", array("goods_id"=>$goods_id), 2, "修改商品失败!");
            }
        }else{
            //根据$goods_id获得被修改商品的信息
            $info = $goods->find($goods_id);  //数据查询find()方法,通过一维数组返回一条记录信息
            $this -> assign("info",$info);
            $this -> display();
        }
    }
}


声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。