Jquery html5 uploader 是Jquery的一個文件上傳插件,支持拖拽上傳,但要求浏覽器支持html5
1.下載插件
http://www.igloolab.com/jquery-html5-uploader/ 具體演示也可在這裡看到。
2.引入不要文件
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js"></script> <script type="text/javascript" src="js/jquery.html5uploader.min.js"></script>
3.在頁面上添加一個拖拽層
<div id="dropbox">
4.調用方法
<script type="text/javascript"> $(function() { $("#dropbox, #multiple").html5Uploader({ name: "foo", postUrl: "bar.aspx" }); }); </script>
postUrl是文件提交的地址,name是文件信息數組的名字(我個人的理解)
5.因為對php不是很熟悉,所以在做這個效果的時候不知道php文件應該怎麼寫,
首先print_r($_FILES);可以在查看獲取的文件的信息,比如我的是:
Array
(
[uploadedFile] => Array
(
[name] => 1111.png
[type] => image/png
[tmp_name] => D:\web\wamp\tmp\php81A8.tmp
[error] => 0
[size] => 59826
)
)
其中這個“uploadedFile”就是上面的name設置的。
如果要獲取文件名只需:$_FILES['uploadedFile']['name']即可;
6.獲取到文件的信息以後,我們一般要將文件復制到指定的路徑中,因為如果不復制的話我們是看不到文件的,這個上傳的文件只是一個臨時的文件,腳本執行完以後就會消失。
所以接下來是復制文件的語句:
move_uploaded_file(string old,string newpath);這個函數是php提供的文件復制函數,
其中old為要復制的文件,newpath為文件復制到的路徑及名稱,所以以上事例的具體語句應該是:
$new= './Public/Upload/files/';
move_uploaded_file($_FILES['uploadedFile']['tmp_name'],$new.$_FILES['uploadedFile']['name']);
確保由old 指定的文件是合法的上傳文件(即通過 PHP 的 HTTP POST 上傳機制所上傳的)。如果文件合法,則將其移動為由 newpath 指定的文件。
如果 old 不是合法的上傳文件,不會出現任何操作,move_uploaded_file() 將返回 false。
如果old 是合法的上傳文件,但出於某些原因無法移動,不會出現任何操作,move_uploaded_file() 將返回 false,此外還會發出一條警告。