PHP无刷新上传文件实现代码


Posted in PHP onSeptember 19, 2011

index.html

<html> 
<head> 
<title>无刷新上传文件</title> 
<meta Content-type="text/html" charset="utf-8" /> 
<script type="text/javascript"> 
function startUpload() { 
document.getElementById('processing').innerHTML = 'loding...'; 
return true; 
} 
function stopUpload(rel){ 
var msg; 
switch (rel) { 
case 0: 
msg = "上传成功"; 
break; 
case 1: 
msg = "上传的文件超过限制"; 
break; 
case 2: 
msg = "只能上传图片文件"; 
break; 
default: 
msg = "上传文件失败"; 
} 
document.getElementById('processing').innerHTML = msg; 
} 
</script> 
</head> 
<body> 
<div style="text-align:center"> 
<div id="processing"></div> 
<form action="upload.php" method="post" enctype="multipart/form-data" target="form-target" onsubmit="startUpload();"> 
<input type="hidden" name="MAX_FILE_SIZE" value="1000000" /> 
<input type="file" name="myfile" /> 
<input type="submit" name="sub" value="upload" /> 
</form> 
<iframe style="width:0; height:0; border:0;" name="form-target"></iframe> 
</div> 
</body> 
</html>

upload.php
<?php 
sleep(2); 
$fileTypes = array('jpg','png','gif','bmp'); 
$result = null; 
$uploadDir = './upfiles'; 
$maxSize = 1 * pow(2,20); 
if ($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['sub'])) { 
$myfile = $_FILES['myfile']; 
$myfileType = substr($myfile['name'], strrpos($myfile['name'], ".") + 1); 
if ($myfile['size'] > $maxSize) { 
$result = 1; 
} else if (!in_array($myfileType, $fileTypes)) { 
$result = 2; 
} elseif (is_uploaded_file($myfile['tmp_name'])) { 
$toFile = $uploadDir . '/' . $myfile['name']; 
if (@move_uploaded_file($myfile['tmp_name'], $toFile)) { 
$result = 0; 
} else { 
$result = -1; 
} 
} else { 
$result = 1; 
} 
} 
?> 
<script type="text/javascript"> 
window.top.window.stopUpload(<?php echo $result; ?>); 
</script>
PHP 相关文章推荐
php表单提交问题的解决方法
Apr 12 PHP
关于zend studio 出现乱码问题的总结
Jun 23 PHP
PHP文件去掉PHP注释空格的函数分析(PHP代码压缩)
Jul 02 PHP
php指定函数参数默认值示例代码
Dec 04 PHP
PHP资源管理框架Assetic简介
Jun 12 PHP
php实现的验证码文件类实例
Jun 18 PHP
PHP判断来访是搜索引擎蜘蛛还是普通用户的代码小结
Sep 14 PHP
PHP简单获取及判断提交来源的方法
Apr 22 PHP
php简单计算年龄的方法(周岁与虚岁)
Dec 06 PHP
php菜单/评论数据递归分级算法的实现方法
Aug 01 PHP
浅谈laravel数据库查询返回的数据形式
Oct 21 PHP
浅谈如何提高PHP代码质量之单元测试
May 28 PHP
PHP通过正则表达式下载图片到本地的实现代码
Sep 19 #PHP
PHP下利用shell后台运行PHP脚本,并获取该脚本的Process ID的代码
Sep 19 #PHP
php去除重复字的实现代码
Sep 16 #PHP
PHP与SQL注入攻击防范小技巧
Sep 16 #PHP
php中判断字符串是否全是中文或含有中文的实现代码
Sep 16 #PHP
php中模拟POST传递数据的两种方法分享
Sep 16 #PHP
php中获得视频时间总长度的另一种方法
Sep 15 #PHP
You might like
php 文章调用类代码
2011/08/11 PHP
PHP实现数据库的增删查改功能及完整代码
2018/04/18 PHP
IE Firefox 使用自定义标签的区别
2009/10/15 Javascript
初窥JQuery(二)事件机制(2)
2010/12/06 Javascript
js实现两个值相加alert出来精确到指定位
2013/09/25 Javascript
用js正确判断用户名cookie是否存在的方法
2014/01/28 Javascript
jQuery操作属性和样式详解
2016/04/13 Javascript
基于Bootstrap实现tab标签切换效果
2020/04/15 Javascript
批量下载对路网图片并生成html的实现方法
2016/06/07 Javascript
JavaScript中的冒泡排序法
2016/08/03 Javascript
JS+HTML5实现上传图片预览效果完整实例【测试可用】
2017/04/20 Javascript
dropload.js插件下拉刷新和上拉加载使用详解
2017/10/20 Javascript
nodejs基于WS模块实现WebSocket聊天功能的方法
2018/01/12 NodeJs
vue项目打包部署到服务器的方法示例
2018/08/27 Javascript
Vue作用域插槽slot-scope实例代码
2018/09/05 Javascript
Node.js HTTP服务器中的文件、图片上传的方法
2019/09/23 Javascript
vue实现简易图片左右旋转,上一张,下一张组件案例
2020/07/31 Javascript
Python里disconnect UDP套接字的方法
2015/04/23 Python
Python聊天室实例程序分享
2016/01/05 Python
python中map()与zip()操作方法
2016/02/27 Python
Mac 上切换Python多版本
2017/06/17 Python
用Python写一个自动木马程序
2019/09/17 Python
wxPython实现带颜色的进度条
2019/11/19 Python
Python中base64与xml取值结合问题
2019/12/22 Python
opencv+python实现均值滤波
2020/02/19 Python
Canal官网:巴西女性时尚品牌
2019/10/16 全球购物
德国2018年度最佳在线药房:Bodfeld Apotheke
2019/11/04 全球购物
介绍一下Python下range()函数的用法
2013/11/07 面试题
大学生毕业自我鉴定范文
2013/11/03 职场文书
2014年大学生就业规划书
2014/04/04 职场文书
五月的鲜花活动方案
2014/08/21 职场文书
技术员个人工作总结
2015/03/03 职场文书
求职自我评价范文
2015/03/09 职场文书
2015年暑假工作总结
2015/07/13 职场文书
初中军训感言
2015/08/01 职场文书
计算机实训心得体会
2016/01/14 职场文书