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 相关文章推荐
php4的彩蛋
Oct 09 PHP
简单的移动设备检测PHP脚本代码
Feb 19 PHP
php发送post请求的三种方法
Feb 11 PHP
php中require和require_once的区别说明
Feb 27 PHP
destoon公司主页模板风格的添加方法
Jun 20 PHP
推荐几款用 Sublime Text 开发 Laravel 所用到的插件
Oct 30 PHP
php实现的验证码文件类实例
Jun 18 PHP
PHP模拟asp.net的StringBuilder类实现方法
Aug 08 PHP
在Mac OS上自行编译安装Apache服务器和PHP解释器
Dec 24 PHP
ThinkPHP设置禁止百度等搜索引擎转码(简单实用)
Feb 15 PHP
PHP使用mysqli操作MySQL数据库的简单方法
Feb 04 PHP
微信公众号开发之通过接口删除菜单
Feb 20 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 文件上传后缀名与文件类型对照表(几乎涵盖所有文件)
2010/05/16 PHP
PHP加密技术的简单实现
2016/09/04 PHP
laravel框架如何设置公共头和公共尾
2019/10/22 PHP
javascript 内存回收机制理解
2011/01/17 Javascript
js中判断文本框是否为空的两种方法
2011/07/31 Javascript
Javascript控制页面链接在新窗口打开具体方法
2013/08/16 Javascript
Javascript Objects详解
2014/09/04 Javascript
原生js实现的贪吃蛇网页版游戏完整实例
2015/05/18 Javascript
jQuery动态星级评分效果实现方法
2015/08/06 Javascript
JavaScript模块化开发之SeaJS
2015/12/13 Javascript
Active控件问题小结(附解决办法)
2016/06/09 Javascript
Javascript循环删除数组中元素的几种方法示例
2017/05/18 Javascript
Vue引用第三方datepicker插件无法监听datepicker输入框的值的解决
2018/01/27 Javascript
详解Angular5 路由传参的3种方法
2018/04/28 Javascript
angularjs手动识别字符串中的换行符方法
2018/10/02 Javascript
Vue实现购物车的全选、单选、显示商品价格代码实例
2019/05/06 Javascript
小程序实现横向滑动日历效果
2019/10/21 Javascript
layui表格设计以及数据初始化详解
2019/10/26 Javascript
JavaScript代码简化技巧实例解析
2020/09/09 Javascript
Python logging模块学习笔记
2014/05/24 Python
详解设计模式中的工厂方法模式在Python程序中的运用
2016/03/02 Python
利用Python实现颜色色值转换的小工具
2016/10/27 Python
Python实现SSH远程登陆,并执行命令的方法(分享)
2017/05/08 Python
Python基础练习之用户登录实现代码分享
2017/11/08 Python
Python实现简单的语音识别系统
2017/12/13 Python
使用Python对微信好友进行数据分析
2018/06/27 Python
Python实现合并两个有序链表的方法示例
2019/01/31 Python
Python 20行简单实现有道在线翻译的详解
2019/05/15 Python
python 实现交换两个列表元素的位置示例
2019/06/26 Python
使用python获取邮箱邮件的设置方法
2019/09/20 Python
美国一站式电动和手动工具商店:International Tool
2020/11/26 全球购物
电子商务应届生自我鉴定
2014/01/13 职场文书
个人自我评价和职业目标
2014/01/24 职场文书
学生未请假就回家检讨书
2014/09/22 职场文书
任命书格式模板
2015/09/22 职场文书
MYSQL 运算符总结
2021/11/11 MySQL