Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Передача данных из динамической формы, в PHP 
V
    Опции темы
VingradFan
Дата 6.10.2009, 08:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 477
Регистрация: 30.1.2006
Где: Москва

Репутация: нет
Всего: 3



Всем доброго дня  smile 

Прошу помощи в организации динамической формы. Для простоты, допустим, что форма строится на базе таблицы, в каждой строке которой 1 текстовое поле с уникальным именем. И где-то на форме кнопочка ДОБАВИТЬ

Добавление и удаление строк выполняют две функции
Код

        function row_add () {
            number_of_fields = 1 * document . getElementById ( 'number_of_fields' ) . value + 1;
            table = document . getElementById ( 'sp_fields_table' ) . insertRow ( number_of_fields );
            cell_1 = table . insertCell ( 0 );
            cell_2 = table . insertCell ( 0 );
            document . getElementById ( 'number_of_fields' ) . value = number_of_fields;
            cell_1 . innerHTML = '<textarea name="name_' + number_of_fields + '" cols="10" rows="10" class="no_background scrollbar_hidden"></textarea>';
            cell_2 . innerHTML = '<input  type="checkbox" onchange="javascript: row_delete ( this );" />';
        }
        function row_delete ( row ) {
            var row_number = row . parentNode . parentNode . rowIndex
            document . getElementById ( 'sp_fields_table') . deleteRow ( row_number );
            number_of_fields = 1 * document . getElementById ( 'number_of_fields' ) . value - 1;
            document.getElementById ( 'number_of_fields') . value = number_of_fields;
        }


Все было бы замечательно, если бы не одно но... Допустим, мы добавили текстовые поля name_1, name_2, name_3, name_4, name_5
А потом удалили name_1, name_2, name_3, name_4. В number_of_fields у нас будет храниться 1, т.е. 1 текствотовое поле на форме, и это правильно.
НО! как ПХП узнает, как именно называется это текстовое поле??? Он знает, что на форме 1 поле, не не знает, как оно называется....

Надеюсь, вопрос понятен, буду очень благодарен за помощь!
Всем спасибо!

Это сообщение отредактировал(а) VingradFan - 6.10.2009, 09:03


--------------------
Когда-нибудь я стану богатым и куплю себе столько Ролтонов, сколько захочу...
PM MAIL WWW ICQ   Вверх
bars80080
Дата 6.10.2009, 10:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 15
Всего: 315



обычно имена делают независимыми. самый простой способ - давать всем полям одно имя name[]
в этом случае на сервере будет доступен массив $_REQUEST['name'][$i]

можно ещё сделать счётчик, который будет записывать количество полей в поле hidden
PM MAIL WWW   Вверх
VingradFan
Дата 6.10.2009, 15:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 477
Регистрация: 30.1.2006
Где: Москва

Репутация: нет
Всего: 3



bars80080, спасибо! Как всегда четко и понятно smile
Я просто раньше никогда не работал с этим глобальным массивом, пойду читать доки...


--------------------
Когда-нибудь я стану богатым и куплю себе столько Ролтонов, сколько захочу...
PM MAIL WWW ICQ   Вверх
bars80080
Дата 6.10.2009, 17:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 15
Всего: 315



не, $_REQUEST я привёл потому, что не знал каким способом отправляются данные, гетом или постом. так что тоже самое справедливо и для $_GET и $_POST, а $_REQUEST включает данные из обоих, а также вроде и $_COOCKIE и что-то ещё
PM MAIL WWW   Вверх
VingradFan
Дата 6.10.2009, 21:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 477
Регистрация: 30.1.2006
Где: Москва

Репутация: нет
Всего: 3



/deleted/
Прошу прощения, вопрос решен  smile 

Это сообщение отредактировал(а) VingradFan - 6.10.2009, 21:28


--------------------
Когда-нибудь я стану богатым и куплю себе столько Ролтонов, сколько захочу...
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0474 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.