图片上传——html5 php实现无刷新上传
本篇向大家介绍一种全新的上传图片的方式,利用html5的filereader读取图片文件,然后将数据传输到服务器再使用php进行处理。实现过程如下(带图片预览功能)
前端html代码 upload,html
"http://www.w3.org/1999/xhtml">
"content-type" content="text/html; charset=utf-8"/>
"file" name="file" />
"button" name="selbutton" class="selbutton" value="选择文件" />
"button" name="upbutton" class="upbutton" value="上传" />
样式如下图
接下来是js代码
接下来是php处理代码 handle.php
$imgtype = array(
'gif'=>'gif',
'png'=>'png',
'jpg'=>'jpeg',
'jpeg'=>'jpeg'
); //图片类型在传输过程中对应的头信息
$message = $_post['message']; //接收以base64编码的图片数据
$filename = $_post['filename']; //接收文件名称
$ftype = $_post['filetype']; //接收文件类型
//首先将头信息去掉,然后解码剩余的base64编码的数据
$message = base64_decode(substr($message,strlen('data:image/'.$imgtype[strtolower($ftype)].';base64,')));
$filename = $filename.".".$ftype;
$furl = "d:/now/";
//开始写文件
$file = fopen($furl.$filename,"w");
if(fwrite($file,$message) === false){
echo json_encode(array('code'=>1,'con'=>'failed'));
exit;
}
echo json_encode(array('code'=>0,'con'=>$filename));
选择文件然后点击上传的效果如下图
以上就是整个图片上传的代码。当然对于php的部分还有很多可以优化的地方,比如文件名部分,可以重命名,以保证相同文件名上传以后的文件名是不同的等等。这种上传方式我也是刚开始使用,当初是受node.js做上传的的启发,然后尝试着应用于php,没想到还真能上传成功。至于这种方式存在哪些问题,我还不是太清楚。在这我抛砖引玉,希望对此有研究的朋友能在下面留言,共同讨论。
转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处
本文地址:
相关文章
发布时间:2024/03/25 浏览次数:70 分类:mysql
-
在本指南中,我们将了解使用 phpmyadmin 从 mysql 数据库中删除所有行的最佳方法。
循环 php mysqli 获取数组函数
发布时间:2024/03/25 浏览次数:125 分类:mysql
-
本教程将指导你了解 php mysqli_fetch_array() 函数,并介绍如何迭代 mysqli 查询。
发布时间:2024/03/19 浏览次数:71 分类:javascript
-
在今天的帖子中,我们将学习如何使用 javascript 在 html canvas 中创建图形,特别是圆形。
powershell 通过网络复制文件
发布时间:2024/02/05 浏览次数:221 分类:编程语言
-
本教程将教你使用 powershell 通过网络共享复制文件。powershell 是一个强大的工具,可让你从其命令行界面执行不同的文件和文件夹操作。
在批处理脚本中映射网络驱动器
发布时间:2023/08/14 浏览次数:607 分类:操作系统
-
本文将讨论如何在批处理脚本中映射网络驱动器。在批处理脚本中映射网络驱动器 为此,我们将看到同一命令的三种格式。 但是,命令的一般格式是:
使用 php mysqli 函数获取最后插入的 id
发布时间:2023/05/09 浏览次数:102 分类:mysql
-
本篇文章简要介绍了 php mysqli() 函数并演示了如何使用它从 mysql 数据库中获取最后插入的 id。它是一个名为 mysqli 的 mysql 驱动程序扩展版本,
发布时间:2023/04/20 浏览次数:143 分类:mongodb
-
在为大文件创建可扩展存储方面,mongodb 及其 gridfs(使用 mongodb 查询语言 - mql 编写)是市场上最好的文件存储ag捕鱼王app官网的解决方案之一。 在本教程中,您将学习如何在 php 中使用 mongodb 作为文件存储。