关于PHP+JQuery图片上传,裁剪,并存储的一些总结

7 篇文章 0 订阅

关于JS的三大误区。

==误区1:js可以生成图片文件?==

js不能操作文件,只能形成裁剪效果,无法生成图片文件。

==误区2:js选择文件时,可以获得文件路径。==

js选择文件时,无法获取文件在个人电脑中的路径。

==误区3:js可以通过 $("input").val()<input type=file> 赋值。==

js不能为 <input type=file> 自动赋值,出于安全方面考虑,fileinput文件只能手动选择。

关于文件上传,截图,并存储的思路

思路1:

使用jquery裁剪插件cropper直接上传,裁剪图片并传到后台服务器。

==最终由于误区1,失败。==

思路2:
  1. 使用jquery裁剪插件cropper直接上传,形成裁剪图片效果
  2. 将原图的路径、起始坐标:x,y 裁剪后图片的宽和高:w,h 传到后台服务器
  3. 使用php对图片进行截取和保存

==最终由于误区2,失败。==

思路3:
  1. 使用jquery裁剪插件cropper直接上传,形成裁剪图片效果
  2. 使用Html5的canvas根据原图,坐标和宽高进行裁剪
  3. 将生成的图片填入到 <input type=file> 表单中进行提交。

==最终由于误区3,失败。==

思路4:
  1. 使用jquery裁剪插件cropper直接上传,形成裁剪图片效果
  2. 使用Html5的canvas根据原图,坐标和宽高进行裁剪,将生成的图片(data:image/jpeg;base64编码)直接Post给后台服务器
  3. PHP使用
$img = base64_decode($img_base64)

解码,再使用

file_put_contents("./uploads/media/{$img_name}", $img)

生成图片文件。

==成功==

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值