php无刷新文件上传代码

<?php
if (isset($_GET['action']) && $_GET['action']=='update')
{
    //update notice data
    //上传文件
    require_once("upload_class.php");
    $f = new Upload( $savepath, $fileFormat, $maxsize, $overwrite);
    if (!$f->run('img'))
    {//下面的img是Form中上传文件的input的名字
        echo $f->errmsg();  //这里只能传递最后一个出错的信息,详细的信息在$f->getInfo()中可以得到。
        print_r($f->returnArray);
    }
    echo "
    <script src="".__FILENAME__."/js/jquery.js" type="text/javascript"></script>
    <script>
    var ptext='';
    ptext="OK";
    //alert($('#img_view').html());
    parent.$('#img_view').html(ptext);
</script>";
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link href="{{$tempurl}}/admin.css" rel="stylesheet" type="text/css" />
<link href="{{$baseurl}}/js/calendar/default/datePicker.css" rel="stylesheet" type="text/css" />
<script src="{{$baseurl}}/js/calendar/WdatePicker.js" type="text/javascript"></script>
<script src="{{$baseurl}}/js/jquery.js" type="text/javascript"></script>
<script src="{{$baseurl}}/js/Forms.js" type="text/javascript"></script>
<script src="{{$baseurl}}/js/FormValid.js" type="text/javascript"></script>
<script type="text/javascript">
      FormValid.succeed = function () {
      $.post("./article.php?action=update",$.getForms("update"),function (msg){
      alert(msg);
      if(msg=="更新公告成功")
      {
        location.href("./article.php");
      }
      //location.href("{{$baseurl}}/index.php");
  });
    return false; 
    }
function file_addupload(type)
{
  //负责增加图片输入框
  var ptext='';
  ptext=$("#"+type+"_more").html()+"<br /><input type='file' name='"+type+"[]' class='input' />";
  $("#"+type+"_more").html(ptext);
}
</script>
<title>发布文章--编辑页面</title>
</head>
<body >
<table width="99%" border="0" cellpadding="0" cellspacing="1" class="install">
  <tr>
    <td colspan="2" class="title">编辑文章内容</td>
  </tr>
  {{section name=article loop=$article}}
  <form action="./article.php?action=update" method="post" name="update" enctype="multipart/form-data" target="upload_iframe">
  <input type="hidden" name="article_id" value="{{$id}}">
  <tr>
    <td class="left">文章标题:</td>
    <td class="right"><input type="text" id="title" name="article_title" value="{{$article[article].title}}" class="input" size="35" valid="required" errmsg="文章标题不能为空" /></td>
  </tr>
  <tr>
    <td class="left">发布IP:</td>
    <td class="right"><input type="text" id="ip" value="{{$article[article].ip}}" name="ip" class="input" readonly /></td>
  </tr>
  <tr>
    <td class="left">作者:</td>
    <td class="right"><input type="text" id="author" name="article_validtime" value="{{$article[article].author}}"  valid="required" errmsg="请输入文章作者"  /></td>
  </tr>
  <tr>
    <td class="left">分类:</td>
    <td class="right"><select name='sort'>
{{html_options options=$sort_options selected=$article[article].sort }}
</select></td>
  </tr>
  <tr>
    <td class="left">来源:</td>
    <td class="right"><input type="text" id="comes" name="comes" value="{{$article[article].comes}}" class="input"/></td>
  </tr>
  <tr>
    <td class="left">是否置顶:</td>
    <td class="right">{{html_radios name='is_top' options=$is_top_radios checked=$article[article].is_top separator=' ' _note='是否置顶|radio|1=>是,0=>否' }}</td>
  </tr>
  <tr>
    <td class="left">内容:</td>
    <td class="right">{{$editor}}</td>
  </tr>
    <tr>
    <td class="left">图片上传:</td>
    <td class="right">
    <span id="img_view">
    <input type="file" name="img[]" class="input" />
      <a href="#" onclick="file_addupload('img')">++</a>
    <span id="img_more"></span>
    </span>
  </tr>
  <tr>
    <td class="left">文件上传:</td>
    <td class="right"><input type="file" name="file[]" class="input" />
      <a href="#" onclick="file_addupload('file')">++</a>
    <span id="file_more"></span>
</td>
  </tr>
  <tr>
    <td colspan="2" class="page" style="text-align:center;"><input type="submit" name="submit" class="button" value="保存" />    <input type="button" name="article_return" value="返回"  class="button" onclick="javascript:location.href('./article.php');" /></td>
  </tr>
  </form>
  {{/section}}
</table>
<iframe name="upload_iframe" style="width: 400px; height: 100px; display: none;">
</iframe>
</body>
</html>

时间: 2024-09-21 07:00:42

php无刷新文件上传代码的相关文章

ajax+php 无刷新文件上传代码

<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"> <html xmlns="http://www.111cn.net/1999/xhtml"> <head> <meta http-equiv="conte

php iframe 无刷新文件上传代码

其它原理很简单,利用form表单的target属性和iframe来实现的,打开为iframe试就行了,返回就利用js判断php教程运行后返回的参数是不是成功 一.上传文件的一个php方法. 该方法接受一个$file参数,该参数为从客户端获取的$_files变量,返回重新命名后的文件名,如果上传失败,则返回空字符串. php代码     function uploadfile($file) {         // 上传路径     $destinationpath = "./upload/&qu

php无刷新文件上传程序代码

在一个网站项目中,为了得到更好的用户体验,很多地方都要处理成异步无刷新的效果.此文件上传范例是利用一个隐藏的框架iframe做桥梁,实现主体页面上传文件无刷新的效果. 其实本范例也不是真正的异步效果,但是也是可以达到无刷新效果的.而且这种方法是实现php无刷新上传文件最快捷,最简单的方法,所以何乐而不为呢. html代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.

实用ExtJS教程100例-009:ExtJS Form无刷新文件上传

文件上传在Web程序开发中必不可少,ExtJS Form中有一个filefield字段,用来选择文件并上传.今天我们来演示一下如何通过filefield实现ExtJS Form无刷新的文件上传. 首先,我们创建一个Form,它包含一个filefield字段 然后,我们通过Form的submit方法进行提交,此时,ExtJS会自动判断,如果Form中包含filefield字段,Form的method会设置为post 最后,我们通过服务器接收form提交的数据,并返回一段json字符串 ExtJS

HTML5 FormData 与无刷新文件上传例子

无刷新文件上传是一个常见而又有点复杂的问题,常见的解决方案是构造 iframe 方式实现. 在 HTML5 中提供了一个 FormData 对象 API,通过 FormData 可以方便地构造一个表单请求,并通过 XMLHttpRequest 来发送.通过 FormData 对象发送文件也是可以的,如此则无刷新上传就变的非常简单了. 那么 FormData 怎么使用呢?下面志文工作室对此进行简单的介绍. 1. 构造 FormData 对象 想得到一个FormData对象,很简单: var fd

ThinkPHP结合AjaxFileUploader实现无刷新文件上传的方法_php实例

本文实例讲述了ThinkPHP结合AjaxFileUploader实现无刷新文件上传的方法.分享给大家供大家参考.具体实现方法分析如下: 首先,AjaxFileUploader插件是一个基于jquery的插件,我们可以使用AjaxFileUploader插件来实现文件异步上传功能了,使用这款插件上传文件不要担心兼容性的问题,它的兼容性可以说兼容所有主流浏览器,下面来给大家介绍一个AjaxFileUploader+thinkphp实现文件上传的实例. ThinkPHP框架下用AjaxFileUpl

Asp.Net 无刷新文件上传并显示进度条的实现方法及思路_实用技巧

相信通过Asp.Net的服务器控件上传文件在简单不过了,通过AjaxToolkit控件实现上传进度也不是什么难事,为什么还要自己辛辛苦苦来 实现呢?我并不否认"拿来主义",只是我个人更喜欢凡是求个所以然.本篇将阐述通过Html,IHttpHandler和 IHttpAsyncHandler实现文件上传和上传进度的原理,希望对你有多帮助. 效果图: 本文涉及到的知识点:1.前台用到Html,Ajax,JQuery,JQuery UI 2.后台用到一般处理程序(IHttpHandler)和

Asp.Net 无刷新文件上传并显示进度条的实现方法及思路

相信通过Asp.Net的服务器控件上传文件在简单不过了,通过AjaxToolkit控件实现上传进度也不是什么难事,为什么还要自己辛辛苦苦来 实现呢?我并不否认"拿来主义",只是我个人更喜欢凡是求个所以然.本篇将阐述通过Html,IHttpHandler和 IHttpAsyncHandler实现文件上传和上传进度的原理,希望对你有多帮助. 效果图: 本文涉及到的知识点: 1.前台用到Html,Ajax,JQuery,JQuery UI 2.后台用到一般处理程序(IHttpHandler)

使用PHP和HTML5 FormData实现无刷新文件上传教程_php实例

无刷新文件上传是一个常见而又有点复杂的问题,常见的解决方案是构造 iframe 方式实现. 在 HTML5 中提供了一个 FormData 对象 API,通过 FormData 可以方便地构造一个表单请求,并通过 XMLHttpRequest 来发送.通过 FormData 对象发送文件也是可以的,如此则无刷新上传就变的非常简单了. 1. 构造 FormData 对象 想得到一个FormData对象,很简单: var fd = new FormData(); FormData 对象只提供了一个方