频道栏目
首页 > 资讯 > CodeIgniter > 正文

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

16-01-07        来源:[db:作者]  
收藏   我要投稿

前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

当然这里少不了组件的核心部分:crossdomain.xml、avatar.swf、default.jpg这3个文件。

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

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

CodeIgniter flash头像上传组件

相关TAG标签
上一篇:让nginx支持CodeIgniter框架
下一篇:ci框架如何重新填充表单(Re-populating the form)
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站