`
slbszq
  • 浏览: 267536 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

PHP 实现页面无刷新上传文件

阅读更多

前台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="上传" />
				</form>
			<iframe style="width:0; height:0; border:0;" name="form-target"></iframe>
		</div>
	</body>
</html>

 

 后台php代码:upload.php:

<?php
	sleep(2);
	$fileTypes = array('jpg','png','gif','bmp');
	$result = null;
	$uploadDir = './upload';
	$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>

 转自: http://blog.csdn.net/shaerdong/article/details/7978218

分享到:
评论

相关推荐

    jq+php无刷新文件上传

    JavaScript文件实现了无刷新上传的逻辑;PHP文件处理接收到的文件数据。 在实际部署时,确保所有文件被正确地放在Web服务器的文档根目录(这里指定为"www")下,这样通过浏览器访问时,整个应用才能正常运行。为了...

    php 无刷新文件上传

    在PHP开发中,实现无刷新文件上传是一种提升用户体验的有效方式,尤其在处理大量或大文件上传时。这里的“无刷新文件上传”指的是用户在上传文件时,页面无需完全刷新即可完成整个过程,通常借助Ajax技术实现。以下...

    js+php无刷新上传

    "js+php无刷新上传"是一个技术主题,主要涉及使用JavaScript(具体为jQuery库)和PHP实现文件的无刷新上传。在传统的文件上传方式中,用户通常需要提交整个表单,页面会刷新以显示上传结果。而无刷新上传,即AJAX...

    Ajax无刷新上传文件( jsp版本)

    但是用iFrame来实现无刷新上传文件确实一个很好的选择。ps:Ajax技术基本上可以说是由google公司带起来的,但少Gmail中上传文件用的还是 IFrame,所以说使用IFrame来上传文件是最好的选择。 我在这里这里用的技术是...

    php+html5实现无刷新上传,大文件分片上传,断点续传

    为了解决这些问题,"PHP+HTML5实现无刷新上传,大文件分片上传,断点续传"的技术应运而生。这一技术通过利用HTML5的新特性,如File API和FormData对象,配合PHP后端处理,实现了高效、稳定且用户体验良好的文件上传...

    ajaxfileupload1.0.zip 文件无刷新上传代码

    这个压缩包“ajaxfileupload1.0.zip”提供了一种实现无刷新文件上传的解决方案。无刷新上传,也称为异步文件上传,是现代网页应用中常用的一个功能,它允许用户在不重新加载整个页面的情况下发送文件到服务器。这种...

    php+iframe 无刷新上传

    同时,为了利用iframe实现无刷新上传,`target`属性应设置为iframe的ID。 3. **IFrame应用** IFrame作为目标表单提交点,可以让表单提交在背景中进行,不更新整个页面。创建一个隐藏的iframe,将表单的`action`...

    php+jquery无刷新上传图片

    在本文中,我们将深入探讨如何使用PHP和jQuery实现无刷新图片上传功能。这种技术通过利用iframe和Ajax异步通信,可以提升用户体验,让用户在不离开当前页面的情况下完成图片上传。 首先,我们需要理解“无刷新”...

    PHP无刷新上传文件 源码 下载

    当我们谈论"PHP无刷新上传文件"时,我们指的是通过AJAX技术实现的一种用户交互方式,它允许用户在不重新加载整个网页的情况下上传文件,提高了用户体验。 PHP无刷新上传文件的核心原理是利用JavaScript(通常与...

    php+html5多进程实现超大附件无刷新上传

    总结起来,"php+html5多进程实现超大附件无刷新上传"是一个结合了HTML5 File API、PHP多进程处理和前端交互优化的技术方案,旨在提供稳定、高效且用户友好的大文件上传体验。通过合理的前端分片和后端合并策略,以及...

    jquery 无刷新 上传图片 上传文件 doc excel

    4. FormData对象:在无刷新上传文件时,FormData对象扮演了重要角色。它可以存储键值对,同时支持文件上传。通过将选择的文件添加到FormData对象,然后使用Ajax的`send()`方法发送,可以实现文件的后台上传。 5. ...

    PHP无刷新上传源代码

    传统的文件上传通常涉及到表单提交,这会导致整个页面刷新,而无刷新上传则通过JavaScript和Ajax技术来实现异步通信,使得文件上传在后台进行,前端界面保持不变。PHP作为服务器端脚本语言,处理这些上传请求并返回...

    flash上传文件,flex上传,无刷新上传,php上传,含源码

    “无刷新上传”是指在用户上传文件时,整个页面无需重新加载,只更新与上传相关的部分。这通常通过AJAX或者Websocket等技术实现。在Flash上传中,可以实时更新上传进度,使得用户体验更为流畅。在这个示例中,可能是...

    仿163网盘无刷新文件上传 for PHP

    在IT行业中,无刷新文件上传是一种提升用户体验的重要技术,它使得用户可以在不重新加载整个页面的情况下上传文件。这里我们关注的是一个PHP实现的无刷新多文件上传系统,它仿照了163网盘的上传功能。这个系统利用了...

    仿163网盘无刷新多文件上传系统

    【标题】"仿163网盘无刷新多文件上传系统"揭示了这个项目的核心功能是模仿网易163网盘的在线文件上传机制,它实现了在不刷新页面的情况下进行多文件同时上传的能力。这样的系统通常采用先进的Web技术,如HTML5的File...

    php ajax无刷新上传

    在现代Web开发中,用户界面的交互性和用户体验是至关重要的,而PHP与AJAX(Asynchronous JavaScript and XML)结合实现的无刷新上传功能正是提升这一体验的有效方式。本篇文章将详细探讨如何使用PHP和AJAX实现文件的...

    JQuery无刷新上传

    无刷新上传,顾名思义,就是在用户上传文件时,无需等待页面刷新,即可完成文件传输。这种技术的核心在于使用Ajax进行异步通信,配合FormData对象来发送文件数据。在jQuery中,我们可以使用`$.ajax()`或`$.post()`...

    使用ajaxFileUpload插件实现图片无刷新上传

    为了解决这个问题,出现了许多无刷新上传技术,其中AjaxFileUpload插件就是一个常用的选择。这个插件允许用户在不刷新页面的情况下实现文件上传,提升了用户体验。 AjaxFileUpload是基于JavaScript的jQuery插件,它...

    Uploadify无刷新上传文件+预览

    【描述】"可实现无刷新上传文件到服务器 预览"表明Uploadify的核心特性是异步上传和实时预览。这种技术对于现代Web应用来说非常重要,因为它减少了用户的等待时间,提高了交互性。无刷新上传意味着在用户选择文件后...

    无刷新上传插件

    在现代浏览器中,`FormData`对象是实现无刷新上传的关键。这个对象可以创建一个二进制数据包,用于封装文件和其他形式数据,然后通过Ajax发送。用户选择文件后,JavaScript可以将文件添加到FormData对象中,再将其...

Global site tag (gtag.js) - Google Analytics