问题描述
- PHP + JQUERY 图片上传问题
-
要求:只要点击上传按钮就可以将这张图片显示到指定位置,并且能将图片从到指定目录,用php做的处理
币有点少,大家帮帮忙吧
解决方案
客户端可以i直接显示图片,用滤镜或者html5的FileReader对象。javascript客户端图片预览
上传看这个:http://www.w3school.com.cn/php/php_file_upload.asp
解决方案二:
1、图片上传可以使用jquery.form.js。单按钮上传,可以先隐藏一个file控件,控制点击按钮实际上是点击了file控件
2、后端处理交给php就好了,都在$_FILE变量里面,处理完成后返回给前端可预览的图片url
3、前端收到上传完成的图片url之后,随便怎么展示都可以了
简单代码如下:
$("#submit").click(function(){
$("#file").click();
});
$("#file").change(function(){
//todo
$("form[name=form]").ajaxSubmit({
url: "upload.php",
beforeSubmit: function(){
$("#picView").show();
},
success: function(url){
$("#picView").find("img").attr("src", url);
},
error: function(){
alert("图片上传失败,请重试");
}
});
});
解决方案三:
这个上传图片这个我会,可是这个需求是只有一个上传按钮,不但要实现文件的选择,还要实现提交,这个有点懵
解决方案四:
客户端可以i直接显示图片,用滤镜或者html5的FileReader对象。javascript客户端图片预览
这个我看了,它是将这个图片的内容作为来显示的,那么我要怎么把这个内容给存一个图片文件呢
解决方案五:
楼主去看下swfupload插件,可以满足你得需求。
解决方案六:
楼主可以参考下Cropit这个插件http://www.oschina.net/p/cropit
是用js画布实现的,浏览器可以直接显示。它是一个base64字符串,
PHP需要再处理下
base64图片格式:$base64_url = data:image/jpeg;base64,xxxxxxxxxxxxxxxxxxxxxx
1,去除头部:$base64_body = substr(strstr($base64_url,','),1);
2,解码:$data= base64_decode($base64_body );
3,存储or创建图片:
file_put_contents($file_path,$data);
或$image = imagecreatefromstring($data);