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 mysql_real_escape_string函数用法与实例教程
Sep 30 PHP
php二分查找二种实现示例
Mar 12 PHP
php实现Linux服务器木马排查及加固功能
Dec 29 PHP
如何使用微信公众平台开发模式实现多客服
Jan 06 PHP
PHP正则表达式过滤html标签属性(DEMO)
May 04 PHP
Smarty环境配置与使用入门教程
May 11 PHP
解决php 处理 form 表单提交多个 name 属性值相同的 input 标签问题
May 11 PHP
yii框架redis结合php实现秒杀效果(实例代码)
Oct 26 PHP
Laravel框架实现利用监听器进行sql语句记录功能
Jun 06 PHP
PHP字符串与数组处理函数用法小结
Jan 07 PHP
php操作redis数据库常见方法实例总结
Feb 20 PHP
php查看一个变量的占用内存的实例代码
Mar 29 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
使用sockets:从新闻组中获取文章(三)
2006/10/09 PHP
将数字格式的计算结果转为汉字格式
2006/10/09 PHP
一个从别的网站抓取信息的例子(域名查询)
2006/10/09 PHP
PHP 如何向 MySQL 发送数据
2006/10/09 PHP
PHP读取MySQL数据代码
2008/06/05 PHP
php数组函数序列之in_array() - 查找数组中是否存在指定值
2011/11/07 PHP
php微信公众号开发(3)php实现简单微信文本通讯
2016/12/15 PHP
PHP 访问数据库配置通用方法(json)
2018/05/20 PHP
php中数组最简单的使用方法
2020/12/27 PHP
js操作textarea 常用方法总结
2012/12/03 Javascript
Js数组的操作push,pop,shift,unshift等方法详细介绍
2012/12/28 Javascript
IE浏览器IFrame对象内存不释放问题解决方法
2014/08/22 Javascript
防止Node.js中错误导致进程阻塞的办法
2016/08/11 Javascript
基于jQuery实现的打字机效果
2017/01/16 Javascript
JS点击缩略图整屏居中放大图片效果
2017/07/04 Javascript
vue表单绑定实现多选框和下拉列表的实例
2017/08/12 Javascript
vue中引用swiper轮播插件的教程详解
2018/08/16 Javascript
如何自定义微信小程序tabbar上边框的颜色
2019/07/09 Javascript
jQuery实现简单全选框
2020/09/13 jQuery
不可错过的十本Python好书
2017/07/06 Python
python实现用户答题功能
2018/01/17 Python
安装python时MySQLdb报错的问题描述及解决方法
2018/03/20 Python
Python数据结构之哈夫曼树定义与使用方法示例
2018/04/22 Python
CSS3新属性transition-property transform box-shadow实例学习
2013/06/06 HTML / CSS
HTML5标签大全
2016/11/23 HTML / CSS
极简鞋类,赤脚的感觉:Lems Shoes
2019/08/06 全球购物
四个太阳教学反思
2014/02/01 职场文书
喷漆工的岗位职责
2014/03/17 职场文书
车辆工程专业求职信
2014/04/28 职场文书
节约粮食标语
2014/06/18 职场文书
行政诉讼答辩状
2015/05/21 职场文书
青年岗位能手事迹材料(2016推荐版)
2016/03/01 职场文书
MySQL中IF()、IFNULL()、NULLIF()、ISNULL()函数的使用详解
2021/06/26 MySQL
php实例化对象的实例方法
2021/11/17 PHP
MySql数据库触发器使用教程
2022/06/01 MySQL
Spring boot admin 服务监控利器详解
2022/08/05 Java/Android