Gmail客户端详细架构之二:象Gmail一样上传文件网页设计 -电脑资料

时间:2013-05-07 07:10:21
染雾
分享
WORD下载 PDF下载 投诉

这是Gmail客户端详细架构系列的第二篇,第一篇请看:Gmail客户端详细架构之一

这一篇文章中我们将看看gmail是如何在emal中上传文件的,

Gmail客户端详细架构之二:象Gmail一样上传文件网页设计

。到处都是AJAX,AJAX能够带来良好的用户体验,尤其能预先完成用户准备执行的动作。

Gmail上传文件提供给我们很多证据,证明使用AJAX和iframes是web 2.0应用不可避免的。Gmail是最先进的web应用之一,让古老的在线email服务焕发的新生。

上面是Gmail的创建新邮件界面。

当你选择好了你的email需要附带的文件,然后开始写email正文,当你的email还没有完成,gmail的文件上传已经结束了,这是怎样实现的呢?

首先这不是使用你常用的multipart/form-data AJAX模式,Gmail使用了iframe来上传附件,它通过代码:style=”display:none” 隐藏了这个iframe

Js代码

为了模仿动态AJAX效果更新你的界面,在upload.php文件最后部分添加了JavaScript

Js代码

    <?php

    $target_path="upload/";

    $target_path=$target_path.basename($_FILES["filefieldname"]["name"]);

    if(move_uploaded_file($_FILES["filefieldname"]["tmp_name"],$target_path)){

    echo"Thefile".basename($_FILES["uploadedfile"]["name"]).

    "hasbeenuploaded";

    }else{

    echo"Therewasanerroruploadingthefile,pleasetryagain!";

    }?>

于是你的界面文件包含这个iframe,并且用upload.php来上传文件

Js代码

    <?php

    Subject:

    AttachFile:

你可以在这里下载所有的源文件:http://www.sajithmr.com/wp-content/uploads/2007/11/file-upload-like-gmail.rar

参考:Upload Files Like Gmail

原文:dzone.com

来自:http://www.javaeye.com/news/2608

Gmail客户端详细架构之二:象Gmail一样上传文件网页设计 -电脑资料

手机扫码分享

Top