2011-05-18 130 views
0

反正是有指定哪些文件類型可以使用此代碼被上傳:HTML上傳文件

<input type="file" id="fighter2_upload" name="fighter2_upload" size=48> 

我只希望能夠上傳JPG/JPEG文件。

任何想法?

感謝

+0

對於服務器端腳本,您使用什麼語言? PHP? ASP? JSP?或者是什麼? – bungdito 2011-05-18 10:50:45

回答

2

你不能只用HTML實現這一目標 - 你可以使用JavaScript來檢查文件類型,但這可以被用戶禁用旁路 - 看到這個例子http://www.codestore.net/store.nsf/unid/DOMM-4Q8H9E

其他明智的,你需要的財產以後像PHP檢查文件類型在服務器端

UPDATE: 另外值得注意的 - 這並非完全安全,因爲人們可以很容易地在上傳之前更改文件的擴展名,或做一些其他的TRIC kery,就像「LoveBug」病毒一樣。

0

您可以使用JavaScript來查看擴展,但是人們可以禁用該功能。

E.g.

if (! document.getElementById('upload-file').value.match(/\.jpe?g$/)) { 
    alert('JPEG files only'); 
} 
0

可以使用接受屬性,但它不是在所有瀏覽器「接受」。

你可以參考這篇文章:File input 'accept' attribute - is it useful?

你需要做服務器端和JavaScript驗證。

您可以做的是捕獲文件輸入的JavaScript更改事件並檢查文件類型......這將是您第一次知道文件類型是否被接受的機會。

0

你可以在表單的驗證函數中檢查這個。

if((document.form1.upload.value.lastIndexOf(".jpg")==-1) { 
    alert("Please upload only .jpg extention file"); 
    return false; 
}