php+html5实现无刷新图片上传教程_php实例
程序员文章站
2024-02-18 17:37:46
...
本篇向大家介绍一种全新的上传图片的方式,利用html5的FileReader读取图片文件,然后将数据传输到服务器再使用PHP进行处理。实现过程如下(带图片预览功能)
前端html代码 upload,html
前端html代码 upload,html
上传
样式如下图
接下来是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,没想到还真能上传成功。
希望大家也可以按照此方法实现图片上传。
推荐阅读
-
asp.net中MVC借助Iframe实现无刷新上传文件实例
-
php iframe实现无刷新文件上传(无需ajax)
-
PHP+Ajax实现无刷新分页实例详解(附demo源码下载),ajaxdemo
-
thinkphp3.2实现上传图片的控制器方法,_PHP教程
-
详解PHP+AJAX无刷新分页实现方法,ajax分页_PHP教程
-
Yii2实现ajax上传图片插件用法,_PHP教程
-
php+jquery Ajax异步上传图片(ajaxSubmit)实例_PHP教程
-
PHP 图片上传实现代码 带详细注释_php实例
-
php+html5使用FormData对象提交表单及上传图片的方法,_PHP教程
-
php实现图片上传并利用ImageMagick生成缩略图,_PHP教程