建站学 - 轻松建站从此开始!

建站学-个人建站指南,网页制作,网站设计,网站制作教程

当前位置: 建站学 > 网站开发 > PHP教程 >

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

时间:2011-09-29 08:49来源: 作者: 点击:
  上传原理很简单就是利用表单的打开方式为iframe的id名,这样就可以在当前页面的iframe打来了,实现文件上传,再利用js返回上传结果。   <html>   <head>   <title>无刷新上传文件</title>   <meta Content-type="text/html&

  上传原理很简单就是利用表单的打开方式为iframe的id名,这样就可以在当前页面的iframe打来了,实现文件上传,再利用js返回上传结果。

  <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>

(责任编辑:admin)
织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片