Как создать больше полей формы с помощью JavaScript, а затем передать значения в PHP - PullRequest
0 голосов
/ 07 июня 2011

Привет! Я хотел бы сделать так, чтобы пользователь мог нажать кнопку «Загрузить больше файлов», чтобы создать дополнительное поле формы загрузки файла, и он также может нажать другую кнопку, называемую «Добавить больше имен», чтобы создать дополнительное ».input type = 'text' "field form.

Должно быть установлено ограничение на количество загружаемых файлов или текстовых полей, которые можно создавать с помощью соответствующих кнопок.Например, должно быть не более 5 полей загрузки файлов и не более 5 текстовых полей.

После того, как пользователь нажмет кнопку «отправить», скрипт запишет общее количество полей загрузки файла и текстовой формы и передаст эти числа в PHP.Например, если имеется 5 полей для загрузки файла и 5 полей для текстовой формы, переменная $ numfiles запишет количество полей загрузки файла, а переменная $ numtext запишет количество текстовых полей.

Пример кода будетбудь здоров, спасибо.

1 Ответ

1 голос
/ 07 июня 2011

может быть что-то вроде этого:

var totalFields = <?=$total_fields?>;
var currentFields = 0;

var addMode = document.getElementById('addMore');
var form = docuement.getElementsByTagName('form')[0];

addMore.onclick = function() {
   if (currentFields >= totalFields) {
      return false;
   }
   var newField = document.createElement('input');
   newField.setAttribute('type', 'file');
   newField.setAttribute('name', 'file'+currentFields);
   form.appendChild(newField);
   currentFields++
}

, а затем

<?
   foreach ($_FILES as $file) {
      // i guess you know what you should do
   }
?>

не проверено ... например,

...