php+flash头像上传组件

有会员系统的站点一般都会有一个头像上传组件,一般做的最简单的是


这样的方式长处是代码写的简单,仅仅要推断图片大小和类型,然后更新数据库。可是用户体验不高。并且站点其它页面假设要使用较小的20X20或148X148大小的图片时会出现图片模糊或图片载入过大。

而另外一种方式,是我们今天要介绍的方式。样式例如以下


过程例如以下:

一、下载文件 php+flash头像上传组件 http://download.csdn.net/detail/tomyjohn/8049273

二、能够直接解压至你的server文件夹

三、文件avatar.swf为基本的文件,在您的项目页面增加例如以下代码,引用这个FLASH文件

<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"
WIDTH="650" HEIGHT="450" id="myMovieName">
<PARAM NAME=movie VALUE="avatar.swf">
<PARAM NAME=quality VALUE=high>
<PARAM NAME=bgcolor VALUE=#FFFFFF>
<param name="flashvars" value="imgUrl=./default.jpg&uploadUrl=./upfile.php&uploadSrc=false" />
<EMBED src="avatar.swf" quality=high bgcolor=#FFFFFF WIDTH="650" HEIGHT="450" wmode="transparent" flashVars="imgUrl=./default.jpg&uploadUrl=./upfile.php&uploadSrc=false"
NAME="myMovieName" ALIGN="" TYPE="application/x-shockwave-flash" allowScriptAccess="always"
PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer">
</EMBED>
</OBJECT>
注意上而代码中的“avatat.swf”和“flashvars”的路径和參数

文档例如以下地址:http://pan.baidu.com/s/1sjHfdrJ

<?php
/**********  仅測试程序 **********/

$savePath = './';  //图片存储路径
$savePicName = time();  //图片存储名称


$file_src = $savePath.$savePicName."_src.jpg";
$filename162 = $savePath.$savePicName."_162.jpg"; 
$filename48 = $savePath.$savePicName."_48.jpg"; 
$filename20 = $savePath.$savePicName."_20.jpg";    

$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);
}
print_r($pic1);exit;
file_put_contents($filename162,$pic1);
file_put_contents($filename48,$pic2);
file_put_contents($filename20,$pic3);

$rs['status'] = 1;
$rs['picUrl'] = $savePath.$savePicName;

print json_encode($rs);

?>
这是PHP測试程序,您能够依据您的需求,制作ASP,JSP以及其它语言的使用程序。


本人淘宝店地址:图米网络http://www.tome178.com or tome178.taobao.com

假设要做企业站或模板站,请直接联系我。




posted @ 2015-01-09 15:39  mfrbuaa  阅读(253)  评论(0编辑  收藏  举报