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 读取shell管道传输过来的内容
Mar 01 PHP
多个PHP中文字符串截取函数
Nov 12 PHP
php读取大文件示例分享(文件操作类)
Apr 13 PHP
PHP中feof()函数实例测试
Aug 23 PHP
php创建和删除目录函数介绍和递归删除目录函数分享
Nov 18 PHP
thinkphp3.2.2前后台公用类架构问题分析
Nov 25 PHP
学习PHP的数组总结【经验】
May 05 PHP
Zend Framework过滤器Zend_Filter用法详解
Dec 09 PHP
使用php实现网站验证码功能【推荐】
Feb 09 PHP
PHP控制反转(IOC)和依赖注入(DI)
Mar 13 PHP
php实现文件预览功能
May 23 PHP
Laravel5.3+框架定义API路径取消CSRF保护方法详解
Apr 06 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获取url的函数代码
2011/08/02 PHP
PHP--用万网的接口实现域名查询功能
2012/12/13 PHP
PHP遍历目录函数opendir()、readdir()、closedir()、rewinddir()总结
2014/11/18 PHP
php如何连接sql server
2015/10/16 PHP
微信公众号支付之坑:调用支付jsapi缺少参数 timeStamp等错误解决方法
2016/01/12 PHP
Smarty保留变量用法分析
2016/05/23 PHP
实例介绍PHP删除数组中的重复元素
2019/03/03 PHP
JS简单的轮播的图片滚动实例
2013/06/17 Javascript
Jquery Ajax解析XML数据(同步及异步调用)简单实例
2014/02/12 Javascript
JavaScript中的函数模式详解
2015/02/11 Javascript
ui组件之input多选下拉实现方法(带有搜索功能)
2016/07/14 Javascript
AngularJS中一般函数参数传递用法分析
2016/11/22 Javascript
JS键盘版计算器的制作方法
2016/12/03 Javascript
angularJS开发注意事项
2018/05/26 Javascript
JavaScript设计模式之原型模式分析【ES5与ES6】
2018/07/26 Javascript
vue移动端监听滚动条高度的实现方法
2018/09/03 Javascript
vue本地打开build后生成的dist文件夹index.html问题
2019/09/04 Javascript
js cavans实现静态滚动弹幕
2020/05/21 Javascript
vue实现信息管理系统
2020/05/30 Javascript
TypeScript 引用资源文件后提示找不到的异常处理技巧
2020/07/15 Javascript
浅谈vue单页面中有多个echarts图表时的公用代码写法
2020/07/19 Javascript
python中类的一些方法分析
2014/09/25 Python
Python实现比较两个列表(list)范围
2015/06/12 Python
Python实现的简单模板引擎功能示例
2017/09/02 Python
Python使用正则表达式过滤或替换HTML标签的方法详解
2017/09/25 Python
Python实现1-9数组形成的结果为100的所有运算式的示例
2017/11/03 Python
django自定义模板标签过程解析
2019/12/14 Python
CSS3 linear-gradient线性渐变生成加号和减号的方法
2017/11/21 HTML / CSS
加拿大国民体育购物网站:National Sports
2018/11/04 全球购物
工厂保洁员岗位职责
2013/12/04 职场文书
机械专业技术员求职信
2014/06/14 职场文书
逃课检讨书
2015/01/26 职场文书
公积金贷款承诺书
2015/04/30 职场文书
如果用一句诗总结你的上半年,你会用哪句呢?
2019/07/16 职场文书
人生感悟经典句子
2019/08/20 职场文书
python实现会员管理系统
2022/03/18 Python