ThinkPHP框架九上传文件和生成缩略图
用到的知识:
1.文件上传的时候要设置表单的enctype属性 如下:

"2$_FILE[名字][]用来接收文件的信息 第二维的字段 name size error type tmp_name 3、move_uploaded_file (临时文件,目标文件) tp自带了上传文件的类,位置:Think/Upload.class.php
"2$_FILE[名字][]用来接收文件的信息 第二维的字段 name size error type tmp_name 3、move_uploaded_file (临时文件,目标文件) tp自带了上传文件的类,位置:Think/Upload.class.php
$goods = M("goods");
if(IS_POST){
if($data = $goods->create()){
if($_FILES["goods_img"]["error"] == 0){
$config = array(
"rootPath" => "./Application/Uploads/", //保存根路径
);
$upload = new ThinkUpload($config);
$info = $upload->uploadOne($_FILES["goods_img"]);// 上传的方法 只上传一张 返回的是上传的文件的额信息
$data["goods_big_img"] = $info["savepath"].$info["savename"];
if($goods->add($data)){
$this->success("tianjiacehgngong","showlist",3);
}else{
$this->error("tianjaishibai");
}
}else{
var_dump($upload->getError);
}
}
}缩略图类存放的位置 ThinkImage.class.php
if(IS_POST){
if($data = $goods->create()){
if($_FILES["goods_img"]["error"] == 0){
$config = array(
"rootPath" => "./Application/Uploads/", //保存根路径
);
$upload = new ThinkUpload($config);
$info = $upload->uploadOne($_FILES["goods_img"]);// 上传的方法 只上传一张 返回的是上传的文件的额信息
$data["goods_big_img"] = $info["savepath"].$info["savename"];
//生成缩略图
$img = new ThinkImage();
//1.打开图片
$big_img = $upload->rootPath.$data["goods_big_img"]; //获得大图片的绝对路径
$img->open($big_img); //打开大图片
//2、生成缩略图
$img->thumb(200,300,2); //设定宽高和怎样缩略
//3、保存
$small_img = $upload->rootPath.$info["savepath"]."small".$info["savename"];
$img->save($small_img);
$data["goods_small_img"] = $small_img;
if($goods->add($data)){
$this->success("tianjiacehgngong","showlist",3);
}else{
$this->error("tianjaishibai");
}
}else{
var_dump($upload->getError);
}
}声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。
- 上一篇: ThinkPHP十二权限和角色的增删改查
- 下一篇: 、ThinkPHP十四字段映射
