php利用iframe实现无刷新文件上传功能的代码

yipeiwu_com6年前PHP代码库
复制代码 代码如下:

<html>
  <head>
  <title>无刷新上传文件</title>
  <meta Content-type="text/html" charset="utf-8" />
  <script type="text/网页特效">
  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>
  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对象链式操作实现原理。分享给大家供大家参考,具体如下: 什么是链式操作呢?使用jQuery的同学印象应该会很深刻.在jQuery中,我们经常会这样的来操作DO...

解析PHP获取当前网址及域名的实现代码

复制代码 代码如下:<?//获取当前的域名:echo $_SERVER['SERVER_NAME'];//获取来源网址,即点击来到本页的上页网址echo $_SERVER["HTT...

深入理解ob_flush和flush的区别(ob_flush()与flush()使用方法)

有关php的ob_flush()与flush()使用方法 注意:ob_flush()和flush()这两个函数一般要一起使用,顺序是先ob_flush(),然后flush(),它们的作用...

PHP实现将浏览历史页面网址保存到cookie的方法

本文实例讲述了PHP实现将浏览历史页面网址保存到cookie的方法。分享给大家供大家参考。具体如下: 将浏览历史页面网址保存到cookie,大致的思路如下面的代码,与实际应用有些差别。...

php短址转换实现方法

php短址转换实现方法

本文实例讲述了php短址转换实现方法。分享给大家供大家参考。具体分析如下: 从昨天下午到现在 推翻了一个又一个的信息存储方案,从mysql到加上内存不受限制的file_get_conte...