thinkphp 头像上传在线剪切编辑问题 (使用美图秀秀头像编辑器组件)
用的tp3.1,想用美图秀秀开放的头像编辑组件来编辑头像,可是不清楚该怎么用,thinkPHP中那个头像上传的接口怎么写,写在哪里,
下面是美图秀秀开放的示例 (http://open.web.meitu.com/products/#M4)
<meta http-equiv=”Content-Type” cont2本文来源gaodaima#com搞(代@码$网6
搞gaodaima代码
ent=”text/html; charset=utf-8″ />
<script src=”http://open.web.meitu.com/sources/xiuxiu.js” type=”text/javascript”></script>
<script type=”text/javascript”>
window.onload=function(){
/*第1个参数是加载编辑器div容器,第2个参数是编辑器类型,第3个参数是div容器宽,第4个参数是div容器高*/
xiuxiu.embedSWF(“altContent”,5,”100%”,”100%”);
//修改为您自己的图片上传接口
xiuxiu.setUploadURL(“http://web.upload.meitu.com/image_upload.php”);
xiuxiu.setUploadType(2);
xiuxiu.setUploadDataFieldName(“upload_file”);
xiuxiu.onInit = function ()
{
xiuxiu.loadPhoto(“http://open.web.meitu.com/sources/images/1.jpg”);
}
xiuxiu.onUploadResponse = function (data)
{
//alert(“上传响应” + data); 可以开启调试
}
}
</script>
<style type=”text/css”>
html, body { height:100%; overflow:hidden; }
body { margin:0; }
</style>
<body>
美图秀秀
——解决思路———————-
jquery.Jcrop插件
/**<br /> * 裁剪图片<br /> * @return [type] [description]<br /> */<br /> public function cutpic(){<br /> if(IS_POST){ <br /> $targ_w = $_POST['w'];<br /> $targ_h = $_POST['h']; <br /> $pos_x = $_POST['x'];<br /> $pos_y = $_POST['y']; <br /> $pos_sw = $_POST['sw']; //选区宽 <br /> $jpeg_quality = 90;<br /> $id = init_base64_decode($this->_post('imgid'));<br /> if(!$id) exit;<br /> $src = M('weipai_images')->where(array('id'=>$id))->getField('PicUrl');<br /> $sf =ltrim($src,'http://'.$_SERVER['HTTP_HOST'].__ROOT__.'/'); <br /> $o_size = getimagesize($sf);<br /> $pct = ($o_size[0]>$o_size[1]?$o_size[1]:$o_size[0])/$pos_sw;<br /> if($pct!=1){<br /> $targ_w*=$pct;<br /> $targ_h*=$pct;<br /> $pos_x*=$pct;<br /> $pos_y*=$pct;<br /> }<br /> <br /><br /> $img_r = imagecreatefromjpeg($src);<br /> $dst_r = ImageCreateTrueColor( $targ_w, $targ_h );<br /> imagecopyresampled($dst_r,$img_r,0,0,$pos_x,$pos_y,<br /> $targ_w,$targ_h,$targ_w,$targ_h);<br /> header('Content-type: image/jpeg');<br /> imagejpeg($dst_r,$sf,$jpeg_quality);<br /> // 释放内存<br /> imagedestroy($dst_r); <br /> redirect(U('Index/cutpicok',array('id'=>$id))); <br /> <br /> }else{<br /> $id = $this->_get('id');<br /> if(!$id) exit; <br /> $data = M('weipai_images')->where(array('id'=>$id))->find(); <br /> if(preg_match("/Public\/Uploads\/medias/",$data['PicUrl'])==false){<br /> $sf = saveMedia($data['PicUrl']);<br /> $sf = 'http://'.$_SERVER['HTTP_HOST'].__ROOT__.'/'.ltrim($sf,'./'); <br /> M('weipai_images')->where(array('id'=>$id))->save(array('PicUrl'=>$sf));<br /> $data['PicUrl'] = $sf; <br /> }<br /> $this->assign('data',$data);<br /> $this->display();<br /> <br /> }<br /> }
——解决思路———————-
新建一个模版: face.html
模版中配置:xiuxiu.setUploadURL(“处理上传图片的方法路径”);
xiuxiu.setUploadDataFieldName(“上传元素的名称,用来接值”)
——解决思路———————-
我做过的实例 去下载吧。
http://download.gaodaima.com/detail/h472591847/7980115