Maison >développement back-end >tutoriel php >Exemple d'implémentation de la fonction tp de téléchargement d'images et de génération de vignettes
L'exemple de cet article décrit comment thinkPHP implémente les fonctions de téléchargement d'images et de génération de vignettes. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :
Enregistrez la méthode de téléchargement des images (Télécharger) et de génération de vignettes (Image) dans thinkPHP
Dans le code HTML. formulaire de page Doit ajouter enctype="multipart/form-data"
<form action="SELF" method="post" enctype="multipart/form-data"> <table width="100%"class="cont"> <tr> <td>照片:</td> <td width="20%"><input type="file" name="pic" id="pic" /></td> <td colspan="3"><input class="btn" type="submit" value="提交" /></td> <td> </td> </tr> </table> </form>
<?php namespace Admin\Controller; use Org\Util\Date; use Think\Controller; use Think\Image; use Think\Upload; class UserController extends Controller { public function add(){ $user = M('user'); if(!empty($_POST)){ $user = $user->create(); //判断传入的图片有没有问题 if($_FILES['pic']['error'] == 0){ $config = array( 'rootPath' => './Application/public/image/' // 设置图片保存路径 ); //new一个上传模型 $upload = new Upload($config); //上传图片 $pic = $upload->uploadOne($_FILES['pic']); //将图片保存到数据库中 $user['big_pic'] = $pic['savepath'].$pic['savename']; //生成缩略图 $img = new Image(); //大图片的路径 $big_img = $upload->rootPath.$user['big_pic']; //打开大图片 $img->open($big_img); //设置图片大小 $img->thumb(200,300); //设置绝对路径 $small_img = $upload->rootPath.$pic['savepath'].'small_'.$pic['savename']; //保存 $img->save($small_img); //将图片名称存入数据库 $user['img'] = $pic['savepath'].'small_'.$pic['savename']; } $user['create_date'] = date("Y-m-d H:i:s"); $msg = "添加失败"; if(M("user")->add($user)) $msg = "添加成功"; $this->redirect(show_list,null,3,$msg); } $this->display(); }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!