thinkphp整合uploadify单图片上传预览.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
精品字里行间 thinkphp整合uploadify,单图片上传+预览 用户头像上传并预览,简短实用的头像上传功能。 网上找了半天头像上传程序,没发现好用的,要么不兼容某些浏览器,要么功能不切合要求。查找有关资料后,发现thinkphp整合uploadify能知足我项目的需求。 着手整起, 首先,下载jquery.uploadify插件(最新版是),把里面的 jquery.uploadify.min.js放置到项目JS目录中,还有样式文件uploadify.css也放到项目CSS目录中,把uploadify.swf文件放置到任意目录,稍后正确引用 即可。 第二步,在模板中引用以上JS和CSS文件(自然,jquery库文件也是必不可少的),在head区写入以下代码: scripttype=text/javascript //图片上传 $(function( ){ 4. $(#file_upload).uploadify({ 5. swf :__PUBLIC__/js/uploadify.swf, 6. uploader:{:U(Public/uploadify)}, 7. buttonText:上传图片, 8. onUploadSuccess:function(file,data,response){ 9. $(#image).attr(src,__PUBLIC__/images/m_+data); 10. $(#pic).val(data); 11. }, 12. }); }); /script 这一步,实际上直接复制插件中的uploadify.php中的代码到控制中也是能接 收图片并上传的,但不太好使(比方没有重命名、不能生成多张规格图片等),所以我控制器直接用了Thinkphp的方法,还有要解释下,onUploadSuccess方法是在文件上传成功后履行的方法,我这里是把默认显示的图片的src替换掉,以实时显示预览图,并且由于上传图片只是把图片传上去了,但并没有更新数据 库,所以要把图片名赋给一个隐藏表单,在点击保留时再更新数据库。(这样做似乎不科学,但我想不出更好的办法了) 第三步: //图片上传实现 publicfunctionuploadify( ){ if(!empty($_FILES)){ import(ORG.Net.UploadFile); $upload=newUploadFile( );//实例化上传类 $upload-maxSize=2048000; 放心做自己想做的 精品字里行间 $upload-allowExts=array(jpg,jpeg,gif,png); $upload-savePath=./Public/images/; $upload-thumb=true;//设置缩略图 import(ORG.Util.Image); $upload-thumbPrefix=m_;//生成缩略图 $upload-thumbMaxWidth=425; $upload-thumbMaxHeight=300; $upload-saveRule=uniqid;//上传规则 $upload-thumbRemoveOrigin=true;//删除原图 if(!$upload-upload( )){ $this-error($upload-getErrorMsg( ));//获取失败信息 }else{ $info=$upload-getUploadFileInfo( );//获取成功信息 } echo$info[0][savename];//返回文件名给JS作回调用 } } 第四步,接着,建立如下HTML代码: imgid=imagesrc=__PUBLIC__/picupload.pngwidth=425height=300border=0/inputid=file_uploadname=file_uploadtype=filemultiple=truevalue=/ 显示效果如下: 点击图片下方的上传头像,图片马上就上传到指定服务器目录,并且把缩略图给 显示出来。 本程序有个缺点:如果用户不停地址击上传,会造成服务器上图片泛滥。。因为 只有最后一次上传的才会保留入数据库,其他的都是废的了,而现在没有解决之。 (提供一个思路:用户头像上传的时候,把用户ID作为图片名称前缀或后缀, 以此来判断图片是否有用) 还有就是,上传成功后会有个complete的提示,我没有做办理,这个能够障蔽掉的,如果不需要(需要的话能够自己定义样式)。 还有人说那个上传按钮不漂亮,能够用图片替换(buttonImage=xxx.png), 我反而感觉用图片替换更不漂亮。实际上这个是能够改正uploadify.css实现 放心做自己想做的

文档评论(0)

130****6858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档