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扩展” 的解决方法
Apr 16 PHP
PHP下常用正则表达式整理
Oct 26 PHP
php缩小png图片不损失透明色的解决方法
Dec 25 PHP
php数组合并array_merge()函数使用注意事项
Jun 19 PHP
php将文本文件转换csv输出的方法
Dec 31 PHP
PHP中使用register_shutdown_function函数截获fatal error示例
Apr 21 PHP
Zend Framework教程之响应对象的封装Zend_Controller_Response实例详解
Mar 07 PHP
PHP7.1方括号数组符号多值复制及指定键值赋值用法分析
Sep 26 PHP
PHP实现文件上传下载实例
Oct 18 PHP
php变量与JS变量实现不通过跳转直接交互的方法
Aug 25 PHP
Yii Framework框架使用PHPExcel组件的方法示例
Jul 24 PHP
Laravel创建数据库表结构的例子
Oct 09 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 If Else(elsefi) 语句
2013/04/07 PHP
$_GET['goods_id']+0 的使用详解
2013/06/06 PHP
PHP基本语法实例总结
2016/09/09 PHP
php基于协程实现异步的方法分析
2019/07/17 PHP
ext jquery 简单比较
2010/04/07 Javascript
原生js拖拽(第一课 未兼容)拖拽思路
2013/03/29 Javascript
jQuery随便控制任意div隐藏的方法
2013/06/28 Javascript
jquery获取元素值的方法(常见的表单元素)
2013/11/15 Javascript
javascript将相对路径转绝对路径示例
2014/03/14 Javascript
用js提交表单解决一个页面有多个提交按钮的问题
2014/09/01 Javascript
JavaScript字符串对象slice方法入门实例(用于字符串截取)
2014/10/16 Javascript
Linux下编译安装php libevent扩展实例
2015/02/14 Javascript
javascript使用shift+click实现选择和反选checkbox的方法
2015/05/04 Javascript
Document.body.scrollTop的值总为零的快速解决办法
2016/06/09 Javascript
JavaScript获取服务器端时间的方法
2016/11/29 Javascript
Js实现中国公民身份证号码有效性验证实例代码
2017/05/03 Javascript
详解JavaScript对数组操作(添加/删除/截取/排序/倒序)
2019/04/28 Javascript
python解析html开发库pyquery使用方法
2014/02/07 Python
插入排序_Python与PHP的实现版(推荐)
2017/05/11 Python
Python中pandas模块DataFrame创建方法示例
2018/06/20 Python
代码实例讲解python3的编码问题
2019/07/08 Python
python3实现斐波那契数列(4种方法)
2019/07/15 Python
Python中print函数简单使用总结
2019/08/05 Python
python jenkins 打包构建代码的示例代码
2019/11/29 Python
python如何调用java类
2020/07/05 Python
canvas画布实现手写签名效果的示例代码
2019/04/23 HTML / CSS
标签和贴纸印刷:Lightning Labels
2018/03/22 全球购物
Lookfantastic香港官网:英国知名美妆购物网站
2018/06/19 全球购物
如何手工释放资源
2013/12/15 面试题
《囚绿记》教学反思
2014/03/01 职场文书
就业推荐表自我鉴定
2014/03/21 职场文书
创业融资计划书
2014/04/25 职场文书
现役军人家属慰问信
2015/03/24 职场文书
经典格言警句:没有热忱,世间便无进步
2019/11/13 职场文书
JavaScript 事件捕获冒泡与捕获详情
2021/11/11 Javascript
django项目、vue项目部署云服务器的详细过程
2022/07/23 Servers