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 move_uploaded_file() 函数(将上传的文件移动到新位置)

PHP move_uploaded_file() 函数(将上传的文件移动到新位置)

定义和用法 move_uploaded_file() 函数将上传的文件移动到新位置。 若成功,则返回 true,否则返回 false。 语法 move_uploaded_file(fil...

PHP7正式版测试,性能惊艳!

PHP7正式版测试,性能惊艳!

我们今天就来看一下PHP 7正式版的算法和 wordpress 应用在其上的性能表现。 PHP7 的安装,真是非常地向下兼容,下载,解压,把之前的配置命令用上,一路回车下去,毫无违和感。...

php 缓存函数代码

复制代码 代码如下:** * @说明: 文件缓存输出 * @参数: $cachefile => cache文件(绝对路径) * @参数: $pertime => 缓存输出的间...

PHP 5.0 Pear安装方法

pear是PHP的扩展和应用程序库,包含了很多有用的类,安装好php5.0后,pear实际上并没有被安装,安装的方法如下:   1.在php目录中双击go-pear....

php.ini中date.timezone设置分析

虽然知道这个参数表示“中华人民共和国”的意思,但官方文档 中并没有这样的参数,只有Asia/Shanghai、Asia/Hong_Kong等这些参数啊,为何这里可以设置为RPC,哪位给指...