Во-первых, от php нет способа получить имя файла (ов) перед загрузкой, вы должны загрузить, чтобы получить свойства файла.Итак, доступны следующие параметры:
(1) Разрешить загрузку файлов, затем получить имена и проверить, содержит ли какой-либо из них «etl».Если не содержит того, что вы ищете, то удалите только что загруженные файлы и установите собственное сообщение об ошибке самостоятельно.Этот подход имеет очень большие накладные расходы, позволяя вам сначала загрузить то, что не нужно, а затем удалить его.Очень плохо, но решает проблему.
(2) С другой стороны, это решение javascript.Дайте полям загрузки общее имя класса, например "userfile1", "userfile2", .......
, затем из вашего javascript и с помощью jquery перехватите отправку формы, затем используйте цикл forчтобы получить значения каждого поля загрузки файла, из которого вы можете получить полное имя и расширение файла, а затем выполнить сравнение «etl».
т.е.
<script type="text/javascript" >
$("#formname").submit(function(){
$(".classname").each(function(){
if($(this).val().indexOf("etl") != -1 ){
return true;
}
});
/*
*whatever makes it finish executing that loop and the execution of code gets
*to this point, then the string "etl" was not found in any of the names.
*/
// write a piece of code to show an hidden error field
$("#hidden_error_div").text("Your error message").show();
return false; //makes sure the form is not submitted.
});
</script>
Надеюсь, это поможет.