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函数utf8转gb2312编码
Dec 21 PHP
php之对抗Web扫描器的脚本技巧
Oct 01 PHP
javascript,php获取函数参数对象的代码
Feb 03 PHP
for循环连续求和、九九乘法表代码
Feb 20 PHP
基于PHP创建Cookie数组的详解
Jul 03 PHP
两个php日期控制类实例
Dec 09 PHP
php验证手机号码
Nov 11 PHP
PHP屏蔽关键字实现方法
Nov 17 PHP
PHP获取当前URL路径的处理方法(适用于多条件筛选列表)
Feb 10 PHP
php多进程模拟并发事务产生的问题小结
Dec 07 PHP
PHP使用HTML5 FormData对象提交表单操作示例
Jul 02 PHP
如何在PHP中使用AES加密算法加密数据
Jun 24 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
这东西价格,可以买几台TECSUN S-2000
2021/03/02 无线电
提升PHP速度全攻略
2006/10/09 PHP
php学习笔记之 函数声明
2011/06/09 PHP
PHP根据两点间的经纬度计算距离
2014/10/31 PHP
CI框架验证码CAPTCHA辅助函数用法实例
2014/11/05 PHP
jquery text,radio,checkbox,select操作实现代码
2009/07/09 Javascript
JS数组返回去重后数据的方法解析
2017/01/03 Javascript
jQuery编写网页版2048小游戏
2017/01/06 Javascript
一个可复用的vue分页组件
2017/05/15 Javascript
jQuery Validate 校验多个相同name的方法
2017/05/18 jQuery
基于JavaScript实现微信抢红包功能
2017/07/20 Javascript
详解基于Vue2.0实现的移动端弹窗(Alert, Confirm, Toast)组件
2018/08/02 Javascript
vsCode安装使用教程和插件安装方法
2020/08/24 Javascript
详解ng-alain动态表单SF表单项设置必填和正则校验
2019/06/11 Javascript
解决layui的input独占一行的问题
2019/09/10 Javascript
使用Angular9和TypeScript开发RPG游戏的方法
2020/03/25 Javascript
解决Vue使用bus总线时,第一次路由跳转时数据没成功传递问题
2020/07/28 Javascript
jQuery实现鼠标拖拽登录框移动效果
2020/09/13 jQuery
Vant 在vue-cli 4.x中按需加载操作
2020/11/05 Javascript
微信小程序实现底部弹出框
2020/11/18 Javascript
基于Python实现大文件分割和命名脚本过程解析
2019/09/29 Python
Python的3种运行方式:命令行窗口、Python解释器、IDLE的实现
2020/10/10 Python
python 自动识别并连接串口的实现
2021/01/19 Python
Python绘制K线图之可视化神器pyecharts的使用
2021/03/02 Python
html5调用app分享功能示例(WebViewJavascriptBridge)
2018/03/21 HTML / CSS
中国一家综合的外贸B2C电子商务网站:DealeXtreme(DX)
2020/03/10 全球购物
医院实习介绍信
2014/01/12 职场文书
日本语毕业生自荐信
2014/02/01 职场文书
大学生村官承诺书
2014/03/28 职场文书
大学生社会实践评语
2014/04/25 职场文书
学校领导干部民主生活会整改方案
2014/09/29 职场文书
倡议书范文大全
2015/04/28 职场文书
2019生态环境保护倡议书!
2019/07/03 职场文书
React配置子路由的实现
2021/06/03 Javascript
postgresql使用filter进行多维度聚合的解决方法
2021/07/16 PostgreSQL
MySQL实现配置主从复制项目实践
2022/03/31 MySQL