首页 > PHP资讯 > PHP培训技术 > codeigniter框架flash头像上传裁剪功能

codeigniter框架flash头像上传裁剪功能

PHP培训技术

前2天推荐了一个开源的flash头像上传组件,今天把这个组件加入到了codeigniter框架中。这个组件最大的特点就是使用方便,当然如果你要修改其中的某些功能的话,你可能需要联系插件作者进行定制了。

下面介绍一下codeigniter框架部署这款flash头像上传组件的方法:

1、控制器controllers


//头像修改	public function avatar()	{		$result         = $this->userinfo_model->get_user_base_info_by_uid($this->uid);		$data           = array();		$data['avatar'] = $this->default_avatar;		if($result[0]->avatar != '')		{			$data['avatar'] = base_url() . "uploads/users/avatar/{$this->uid}/{$this->uid}_big.png";		}		$this->view('userinfo/avatar', $data);	}	//头像处理	public function doavatar()	{		error_reporting(0);		//设置头像保存目录		$webroot   = $_SERVER['DOCUMENT_ROOT'];		$save_path = "{$webroot}/uploads/users/avatar/{$this->uid}/";		if(!file_exists($save_path))		{			mkdir($save_path, 0777, true);		}		$file_src    = "src.png";		$filename162 = "{$save_path}{$this->uid}_big.png";		$filename48  = "{$save_path}{$this->uid}_middle.png";		$filename20  = "{$save_path}{$this->uid}_small.png";		$src  = base64_decode($_POST['pic']);		$pic1 = base64_decode($_POST['pic1']);		$pic2 = base64_decode($_POST['pic2']);		$pic3 = base64_decode($_POST['pic3']);		if($src)		{			file_put_contents($file_src, $src);		}		file_put_contents($filename162, $pic1);		file_put_contents($filename48, $pic2);		file_put_contents($filename20, $pic3);		$data           = array();		$data['avatar'] = $this->uid;		$result         = $this->userinfo_model->update_user_by_uid($this->uid, $data);		if($result)		{			$rs['status'] = 1;			echo json_encode($rs);		}	}

2、视图views



			<script type="text/javascript">			function uploadevent(status){				status += '';				switch(status){					case '1':						break;					case '-1':						window.location.reload();						break;					default:						window.location.reload();				}			}		《script》		
	
当然这里少不了组件的核心部分:crossdomain.xml、avatar.swf、default.jpg这3个文件。


自己可以根据实际需要对上传文件做些安全等方面的处理。

贴个自己项目中的效果图:

PHP培训技术

本文由欣才IT学院整理发布,未经许可,禁止转载。
支持13不支持0