php+iframe 实现上传文件功能示例


Posted in PHP onMarch 04, 2020

本文实例讲述了php+iframe 实现上传文件功能。分享给大家供大家参考,具体如下:

我们通过动态的创建iframe,修改form的target,来实现无跳转的文件上传。

具体的实现步骤

1.捕捉表单提交事件
2.创建一个iframe
3.修改表单的target,指向iframe
4.删除iframe

file.html代码如下:

<!DOCTYPE HTML>
<html lang="zh-CN">
<head>
 <meta charset="UTF-8">
 <title></title>
</head>
<body>
 <form action="upfile.php" method="post" id="upfileForm" enctype="multipart/form-data">
  <input type="file" name="file" />
  <input type="submit" name="submit" value="上传" />
 </form>
 <div id="result"></div>
</body>
<script type="text/javascript" src="./jquery.js"></script>
<script type="text/javascript">
$("#upfileForm").bind("submit", function() {
 var ifrName = 'upfile' + Math.random();
 var ifr = $("<iframe name='" + ifrName + "' width='0' height='0' frameborder='0'></iframe>");
 $("body").append(ifr);
 $(this).attr("target", ifrName);
});
</script>
</html>

upfile.php代码如下:

<?php
$uploadDir = './upload/';
if(!file_exists($uploadDir)) {
  @mkdir($uploadDir, 0777, true);
}
$uploadFile = $uploadDir . basename($_FILES['file']['name']);
if(move_uploaded_file($_FILES['file']['tmp_name'], $uploadFile)) {
  echo "<script>parent.document.getElementById('result').innerHTML='OK';</script>";
} else {
  echo "<script>parent.document.getElementById('result').innerHTML='NO';</script>";
}

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
PHP 5昨天隆重推出--PHP 5/Zend Engine 2.0新特性
Oct 09 PHP
Windows下安装Memcached的步骤说明
Apr 25 PHP
PHP zlib扩展实现页面GZIP压缩输出
Jun 17 PHP
PHP错误抑制符(@)导致引用传参失败Bug的分析
May 02 PHP
php处理文件的小例子(解压缩,删除目录)
Feb 03 PHP
邮箱正则表达式实现代码(针对php)
Jun 21 PHP
PHP中IP地址与整型数字互相转换详解
Aug 20 PHP
PHP内置的Math函数效率测试
Dec 01 PHP
PHP 正则表达式小结
Feb 12 PHP
php身份证号码检查类实例
Jun 18 PHP
百万级别知乎用户数据抓取与分析之PHP开发
Sep 28 PHP
php 7新特性之类型申明详解
Jun 06 PHP
php实现文件上传基本验证
Mar 04 #PHP
PHP实现文件上传操作和封装
Mar 04 #PHP
PHP实现文件上传后台处理脚本
Mar 04 #PHP
php 使用html5 XHR2实现上传文件与进度显示功能示例
Mar 03 #PHP
php+ajax实现文件切割上传功能示例
Mar 03 #PHP
php 输出缓冲 Output Control用法实例详解
Mar 03 #PHP
PHP 加密 Password Hashing API基础知识点
Mar 02 #PHP
You might like
php使用PDO获取结果集的方法
2017/02/16 PHP
PHP实现求两个字符串最长公共子串的方法示例
2017/11/17 PHP
laravel实现上传图片并在页面显示的例子
2019/10/14 PHP
laravel通过a标签从视图向控制器实现传值
2019/10/15 PHP
通过Unicode转义序列来加密,按你说的可以算是混淆吧
2007/05/06 Javascript
用js实现层随着内容大小动态渐变改变 推荐
2009/12/19 Javascript
判断控件是否已加载完成的代码
2010/02/24 Javascript
获取表单控件原始(初始)值的方法
2013/08/21 Javascript
基于NodeJS的前后端分离的思考与实践(六)Nginx + Node.js + Java 的软件栈部署实践
2014/09/26 NodeJs
javascript实现行拖动的方法
2015/05/27 Javascript
深入解读JavaScript中的Iterator和for-of循环
2015/07/28 Javascript
javascript实现网站加入收藏功能
2015/12/16 Javascript
javascript自动恢复文本框点击清除后的默认文本
2016/01/12 Javascript
JavaScript中eval函数的问题
2016/01/31 Javascript
js编写当天简单日历效果【实现代码】
2016/05/03 Javascript
webpack打包js文件及部署的实现方法
2017/12/18 Javascript
vue组件(全局,局部,动态加载组件)
2018/09/02 Javascript
分享5个顶级的JavaScript Ajax组件库
2018/09/16 Javascript
Vue项目中最新用到的一些实用小技巧
2018/11/06 Javascript
Vue实现图片与文字混输效果
2019/12/04 Javascript
Vue学习笔记之计算属性与侦听器用法
2019/12/07 Javascript
详解vue组件之间的通信
2020/08/30 Javascript
[01:10]DOTA2亚洲邀请赛 征战号角响彻全场
2015/01/06 DOTA
Windows系统下安装Python的SSH模块教程
2015/02/05 Python
讲解Python的Scrapy爬虫框架使用代理进行采集的方法
2016/02/18 Python
使用C#配合ArcGIS Engine进行地理信息系统开发
2016/02/19 Python
django 在原有表格添加或删除字段的实例
2018/05/27 Python
Python中zip()函数的解释和可视化(实例详解)
2020/02/16 Python
python实现吃苹果小游戏
2020/03/21 Python
通过canvas转换颜色为RGBA格式及性能问题的解决
2019/11/22 HTML / CSS
阿迪达斯希腊官方网上商店:adidas希腊
2019/04/06 全球购物
食品采购员岗位职责
2014/04/14 职场文书
2014入党积极分子批评与自我批评思想报告
2014/10/06 职场文书
开展党的群众路线教育实践活动剖析材料
2014/10/13 职场文书
详解JAVA的控制语句
2021/11/11 Java/Android
mysql查询结果实现多列拼接查询
2022/04/03 MySQL