建议不要使用服务器端处理,因为处理的时候文件已经上传了 这样会加重服务器负担,而且如果文件过大页面也会死掉 在客户端,一般都是使用Javascript实现 双飞的方法就不错,而且实现方便 小弟一般都使用正则判断,现在想来觉得有些麻烦 ------------START----------------------- function CheckUploadFile(FileLimit,FileInput) { var FileName=FileInput.value; var pattern = new RegExp("\.("+FileLimit+")$","i"); res = pattern.test(FileName); if(!res&&FileName!="") { alert("This system only allow "+FileLimit+" to upload!"); return false; } if(FileName=="") { alert("Please select a file to upload!"); return false; } else return true; } -------------END------------------------------- 其中FileInput是上传的控件名,FileLimit是限制的文件格式 如果格式为多个就用|隔开
var filename = f.file.value.trim();
var filenamewav = filename.substr(filename.length-4);
if(filenamewav.toLowerCase() != ".wav")
{
alert("error!");
return false;
}
先判断上来的文件名是否为WAV这种格式
再判断上来的MIME信息是否为audio/wav类型
这样会加重服务器负担,而且如果文件过大页面也会死掉
在客户端,一般都是使用Javascript实现
双飞的方法就不错,而且实现方便
小弟一般都使用正则判断,现在想来觉得有些麻烦
------------START-----------------------
function CheckUploadFile(FileLimit,FileInput)
{
var FileName=FileInput.value;
var pattern = new RegExp("\.("+FileLimit+")$","i");
res = pattern.test(FileName);
if(!res&&FileName!="")
{
alert("This system only allow "+FileLimit+" to upload!");
return false;
}
if(FileName=="")
{
alert("Please select a file to upload!");
return false;
}
else return true;
}
-------------END-------------------------------
其中FileInput是上传的控件名,FileLimit是限制的文件格式
如果格式为多个就用|隔开
echo 'not wav';
exit;
} else {
your code
}