js获取base64格式图片预览上传并用php保存到本地服务器指定文件夹
html:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body> <input id="load" type="file" onchange="upload(this.files)" name="myfile"/>
<div id="dd"></div> <script src="jquery-1.9.1.min.js"></script>
<script> function upload(f){ var str = "";
var imgtype="";
var gs=$("#load").val(); //获取图片url
var src=""; imgtype = gs.toLowerCase().split('.');//截取图片格式 png,jpg,是一个数组
imgtype =imgtype[1];//选取 for(var i=0;i<f.length;i++){ var reader = new FileReader();
reader.readAsDataURL(f[i]); reader.onload = function(e){
src=e.target.result;//base64图片 str+="<img src='"+e.target.result+"'/>";
$("#dd").html(str); //预览图片 $.ajax({ url:"chul.php",
type:"post",
data:{
src:src,
imgtype:imgtype
},
success:function(data){
console.log(data)
} }) }
} } </script>
</body>
</html>
php:
<?php
header('Content-type:text/html;charset=utf-8');
//转换base64图片 必须手动建一个img文件夹
define('UPLOAD_DIR', 'img/');
$img = $_POST['src'];
$imgtype=$_POST["imgtype"]; //判断图片格式类型
if($imgtype=="png"){ $img = str_replace('data:image/png;base64,', '', $img);
} if($imgtype=="jpg"){ $img = str_replace('data:image/jpeg;base64,', '', $img);
} $img = str_replace(' ', '+', $img);
$data = base64_decode($img); //判断图片格式类型
if($imgtype=="png"){
$imgurl = UPLOAD_DIR . uniqid(). '.png'; } if($imgtype=="jpg"){
$imgurl = UPLOAD_DIR . uniqid(). '.jpg'; } echo $img;
//把图片写入文件中
$success = file_put_contents($imgurl, $data);
?>
js获取base64格式图片预览上传并用php保存到本地服务器指定文件夹的更多相关文章
- 【项目相关】MVC中使用WebUploader进行图片预览上传以及编辑
项目中需要用到多图片上传功能,于是在百度搜了一下,首先使用了kissy uploader,是由阿里前端工程师们发起创建的一个开源 JS 框架中的一个上传组件...但,后面问题出现了. 在对添加的信息进 ...
- H5实现多图片预览上传,可点击可拖拽控件介绍
版权声明:欢迎转载,请注明出处:http://blog.csdn.net/weixin_36380516 在做图片上传时发现一个蛮好用的控件,支持多张图片同时上传,可以点击选择图片,也可以将图片拖拽到 ...
- 对百度WebUploader的二次封装,精简前端代码之图片预览上传(两句代码搞定上传)
前言 本篇文章上一篇: 对百度WebUploader开源上传控件的二次封装,精简前端代码(两句代码搞定上传) 此篇是在上面的基础上扩展出来专门上传图片的控件封装. 首先我们看看效果: 正文 使用方式同 ...
- jquery.uploadView 实现图片预览上传
图片上传,网上有好多版本,今天也要做一个查了好多最终找到了一个uploadview 进行了一下修改 来看代码 @{ Layout = null; } <!DOCTYPE html> < ...
- js实现移动端图片预览:手势缩放, 手势拖动,双击放大...
.katex { display: block; text-align: center; white-space: nowrap; } .katex-display > .katex > ...
- JS代码实用代码实例(输入框监听,点击显示点击其他地方消失,文件本地预览上传)
前段时间写前端,遇到一些模块非常有用,总结以备后用 一.input框字数监听 <!DOCTYPE html> <html lang="en"> <he ...
- 【javascrpt】——图片预览和上传,兼容IE 9-
下载DEMO:https://github.com/CaptainLiao/zujian/tree/master/Upload 对于现代浏览器来说,要实现图片预览非常简单: 1.fileReader. ...
- summernote图片上传功能保存到服务器指定文件夹+php代码+java方法
1.summernote富文本编辑器 summernote是一款基于bootstrap的富文本编辑器,是一款十分好用的文本编辑器,还附带有图片和文件上传功能. 那么在我们网站中想吧这个图片上传到服务器 ...
- 【Js应用实例】图片预览
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...
随机推荐
- 搞懂这7个Maven问题,带你吊打面试官!
Java技术栈 www.javastack.cn 优秀的Java技术公众号 作者:张丰哲 www.jianshu.com/p/20b39ab6a88c 在如今的互联网项目开发当中,特别是Java领域, ...
- SElinux(转)
转自:http://www.361way.com/rh134-selinux/4653.html RH134小结(四)初识SElinux 2015年8月2日admin发表评论阅读评论 一.SEli ...
- USACO2008 Roads Around The Farm /// queue oj23321
题目大意: N (1 ≤ N ≤ 1,000,000,000)牛群在遇到岔路时,若能分为恰好相差 K (1 ≤ K ≤ 1000)的两路,则持续分裂(假设会一直遇到岔路),否则停止开始吃草. Inpu ...
- Codeforces 479【C】div3
题目链接:http://codeforces.com/problemset/problem/977/C 题意:给你n个数字,输出任意一个数字,这个数字刚好大于等于,序列里面k个数字. 题解:排个序,第 ...
- axios 基本运用
axios是专门对ajax请求进行封装的一个插件,其返回一个promise对象,用法跟ES6的promise很相似 一.安装axios插件npm install axios 二.引入axios插件 在 ...
- 纯css制作小三角
在网站制作的过程中常涉及一些小图标,以前大部分会采用小图片.但有了css3后很多变得方便了,比如要在li列表的每行文字的前面加个小三角,可以这么写: <!DOCTYPE html> < ...
- iOS进阶四-自动释放池原理
概述 AutoreleasePool(自动释放池)是OC中的一种内存自动回收机制,它可以延迟加入AutoreleasePool中的变量release的时机.在正常情况下,创建的变量会在超出其作用域的时 ...
- C++: class sizeof
https://blog.csdn.net/fengxinlinux/article/details/72836199 C++中类所占的大小计算,因为涉及到虚函数成员,静态成员,虚继承,多继承以及空类 ...
- 导出Excel格式数据
/** * 导出规则统计数据 excel格式 * @param bill * @return */ public String exportExamsignupExamnoExcel ( String ...
- bfs+dfs乱搞+类似拓扑排序——cf1182D
代码不知道上了多少补丁..终于过了 用类似拓扑排序的办法收缩整棵树得到x,然后找到x直连的最远的和最近的点 只有这三个点可能是根,依次判一下即可 另外题解的第一种方法时找直径,然后判两端点+重心+所有 ...