thinkphp 读取mysql数据 编辑

 先在php_myadmin中建一张table  test_form,注意格式是 ”前缀_后缀“ 的形式

   输入一些测试的数据,如下

    

         id是主键;


在lib文件夹下的action中新建一个FormAction.class.php,内容如下:

  class FormAction extends Action{   
    public function edit($id=0){    
            $Form   =   M('Form');    
            $this->vo   =   $Form->find($id);    
            $this->display();
        }
    public function update(){    
        $Form   =   D('Form');    
        if($Form->create()) { 
            $result =   $Form->save();       
            if($result) {            
                $this->success('操作成功!');        
            }else{            
                $this->error('写入错误!');        
            }    
        }else{        
            $this->error($Form->getError());   
        }
    }    
}

find函数会通过传入的id找到你要更新的那行,所以id必须是主键,display函数将find找到的数据渲染在模板上;


在tpl文件夹下新建Form文件夹,新建edit.html,用来生成读取数据的模板,内容如下:

<center>

     <form method="post" action="__URL__/update">    
        标题:<input type="text" name="title" value="{$vo.title}"><br/>   
        姓名:<input type="text" name="name" value="{$vo.name}"><br/>  
        内容:<textarea name="content" rows="5" cols="45">{$vo.content}</textarea><br/>    
        <input type="hidden" name="id" value="{$vo.id}">    
        <input type="submit" value="提交">  
        </form>

    </center>

   "{$vo.title}"  中$vo是之前action中通过find函数找到的数据实例,title是表的属性

    注意:input 的name属性必须为table的属性


在lib文件夹下的model中新建一个FormModel.class.php,内容如下:

 class FormModel extends Model {    
    protected $_validate    =   array(        
           
        array('name','5,20','姓名长度必须在5到20','3','length'),     
        array('title','require','标题必须'),  
    );
    protected $_auto    =   array(        
        array('create_time','time',1,'function'),        
    );
}

$_validate可以定义对table写入的一些限制,通过多维数组的形式传参;

$_auto可以完成一些自动填充项,如上述会自动添加table 的create_time


完成如上的操作后,在浏览器的地址栏输入  http://localhost/thinkphp_3.1.3/index.php/Form/edit/id/1

   更改前:

   更改后:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值