码迷,mamicode.com
首页 > Web开发 > 详细

thinkPHP框架之使用篇三

时间:2016-12-12 09:34:27      阅读:235      评论:0      收藏:0      [点我收藏+]

标签:bst   大小   footer   upd   load   使用   表达式   子类   view   

一、Id  隐藏
<p>
  <input class="text-input small-input" type="hidden" id="id" name="id" value="{$result.id}"/>
</p>
 

二、重写父类方法
public $model = null;
// (重写)框架的构造方法,运行工程时框架内部会执行,作用是初始化常用属性, 方法等初始化工作
public function __construct()
{
    // 调用父类方法
    parent::__construct();
    $this->model = M(‘Product‘);
}
完善后
PublicAction
继承父类
构造函数
class PublicAction extends Action {
    public $model = null;
    //框架的构造方法,运行工程师框架内部会执行,作用是初始化常用的属性,方法等初始化工作
    public function __construct()
    {
        //调用父类方法
        parent::__construct();
        //获取当前子类的名;
        $class_name = get_class($this);
        $name = substr($class_name,0,-6);
//        dump($name);exit();
        $this->model = M($name);
    }
}

三、上传文件
文件上传两大核心:
<form action="__APP__/product/update" method="post" enctype="multipart/form-data> 支持文件上传
<input class="text-input medium-input" type="file" id="" name="img" /> 文件类型
查手册—》文件上传
// 文件上传
import(‘ORG.Net.UploadFile‘);
$upload = new UploadFile();// 实例化上传类
$upload->maxSize  = 3145728 ;// 设置附件上传大小
$upload->allowExts  = array(‘jpg‘, ‘gif‘, ‘png‘, ‘jpeg‘);// 设置附件上传类型
$upload->savePath =  ‘./Public/Uploads/‘;// 设置附件上传目录
if(!$upload->upload()) {// 上传错误提示错误信息 CMD进入upload()方法
    $this->error($upload->getErrorMsg());
}else{// 上传成功 获取上传文件信息
    $info =  $upload->getUploadFileInfo();
}
// 保存表单数据 包括附件数据
$User = M("User"); // 实例化User对象
$User->create(); // 创建数据对象
$User->photo = $info[0][‘savename‘]; // 保存上传的照片根据需要自行组装
$User->add(); // 写入用户数据到数据库
$this->success(‘数据保存成功!‘);
 
Mac 系统下修改文件权限,可以自动创建文件
// 尝试创建目录      权限  
if(!mkdir($savePath,777,true)){
文件修改权限用Linux修改
sudo chmod -R 777 /Applications/XAMPP/xamppfiles/htdocs/phprise/Public 
// 对上传文件按日期建文件夹分类
$year = date(‘Y‘);
$month = date(‘M‘);
$day = date(‘d‘);
$upload->savePath =  ‘./Public/Uploads/‘.$year.‘/‘.$month.‘/‘.$day.‘/‘;// 设置附件上传目录
// 生成缩略图
$upload->thumb = true;
$upload->thumbMaxWidth = ‘50,200‘;
$upload->thumbMaxHeight = ‘50,200‘;
整体:
if (!empty($_FILES[‘img‘][‘name‘])){
            // 文件上传
            import(‘ORG.Net.UploadFile‘);
            $upload = new UploadFile();// 实例化上传类
            $upload->maxSize  = 3145728 ;// 设置附件上传大小
            $upload->allowExts  = array(‘jpg‘, ‘gif‘, ‘png‘, ‘jpeg‘);// 设置附件上传类型
            $year = date(‘Y‘);
            $month = date(‘M‘);
            $day = date(‘d‘);
            $upload->savePath =  ‘./Public/Uploads/‘.$year.‘/‘.$month.‘/‘.$day.‘/‘;// 设置附件上传目录
            // 生成缩略图
            $upload->thumb = true;
            $upload->thumbMaxWidth = ‘50,200‘;
            $upload->thumbMaxHeight = ‘50,200‘;
            if(!$upload->upload()) {// 上传错误提示错误信息
                $this->error($upload->getErrorMsg());
            }else{// 上传成功 获取上传文件信息
                $info =  $upload->getUploadFileInfo();
//                dump($info);exit();
                // 保存到数据库中
                // 拼接图片路径
                $img_path = $info[0][‘savepath‘].$info[0][‘savename‘];
//                dump($img_path);exit();
                $_POST[‘img_path‘] = $img_path;
            }
        }

四、<!--指定当前的默认路径—> 在<head></head>标签内些
<base href="__ROOT__/"/>
 

五、模板整体拼接新方法 代替  
public function index(){
//       $this->view();
        // 获取当前方法的Tpl文件内的模板
        $result = $this->fetch();
        $this->assign(‘result‘, $result);
//        dump($result);exit();
        $this->display(‘Public:layout‘);
    }
代替 view()
public function view(){
    $this->display(‘Public:header‘);
    $this->display();
    $this->display(‘Public:right‘);
    $this->display(‘Public:footer‘);
}

六、 正则表达式
//    var reg1 = /^[a-zA-Z\d]{1}\w+@\w+(.(com|net))?.(cn|com)$/; // 实体
 
 

thinkPHP框架之使用篇三

标签:bst   大小   footer   upd   load   使用   表达式   子类   view   

原文地址:http://www.cnblogs.com/z-han49888/p/6163213.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!