Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Динамическое добавление полей формы PHP, JavaScript, MySQL
Идея в том что когда добавляешь новую форму для закачки файла, то ему присваивается новое имя, которое необходимо передать в экшен файл(start.php), там уже его обработать и добавить... Только вот не могу понять какое имя у формы по дефолту, и какие имена будут добавляться?
Покинул форум
Сообщений всего: 1539
Дата рег-ции: Март 2010 Откуда: Киров
Помог: 6 раз(а)
Добавляется не форма, а поле с именем file - и это массив. Т.е. после отправки в скрипте вы сможете обработать массив $_FILES['file']. По умолчанию первое поле file[0], потом почему-то добавляются file[11], file[12] и т.д. Т.е. в скрипте соответственно достаете $_FILES['file'][0], $_FILES['file'][11], $_FILES['file'][12] и т.д. Но индексы элементов этого массива впринципе знать необязательно. Можно сделать обход массива foreach().
Kubert
Отправлено: 02 Июля, 2010 - 21:58:26
Частый гость
Покинул форум
Сообщений всего: 186
Дата рег-ции: Февр. 2010
Помог: 3 раз(а)
По поводу 0, 11, 12... Это моя ошибка) С эксперементами случайно забыл вернуть обратно. исправл) var c=10; а надо var c=0;
Добавление записи в базу можно сделать в этом же цикле, а можно этим циклом сформировать строку запроса, а потом одним запросом занести все в базу. Последний вариант рациональнее.
JustUserR
Отправлено: 03 Июля, 2010 - 01:59:05
Активный участник
Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009
Помог: 17 раз(а)
Kubert пишет:
Идея в том что когда добавляешь новую форму для закачки файла, то ему присваивается новое имя, которое необходимо передать в экшен файл(start.php), там уже его обработать и добавить... Только вот не могу понять какое имя у формы по дефолту, и какие имена будут добавляться?
Использование одних и тех же JS-функций возможно сразу для обработки нескольких различных объектов - если организовать передачу идентификатора объекта с которым будут совершаться определенные действия В вашем случае динамически добавляемые поля для загрузки файлов находятся внутри формы - и вы можете передавать в вызываемых функциях ссылку на текущую форму как this.form то есть конструкция вызова будет иметь вид к примеру addline(this.form) - и в этом случае вообще не придется использовать явное или неявное именование ваших форм Далее в самой JS-функции нужно убрать привязку к имени таблицы внутри формы - и индексировать ее как дочерний элемент с помощью DOM-модели И вообще ваши JS-функции можно упоростить при использовании DOM-модели - ведь вы сможете добавлять и удалять элементы с помощью фукнции appendChild и removeChild соответственно - и не надо будет использовать регулярные выражения с кавычками и уровнями экранирования в них
----- Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.