Показать сообщение отдельно
  #1 (permalink)  
Старый 26.10.2010, 09:05
Кандидат Javascript-наук
Отправить личное сообщение для lolka84 Посмотреть профиль Найти все сообщения от lolka84
 
Регистрация: 23.08.2010
Сообщений: 123

Работа с "динамической" формой.
Добрый день, незнаю, насколько правильно обозвал в сабже проблему, суть в следущем:
Есть форма, куда подгружаются данные из бд. Фишка в том, что эти данные каждый раз разные, соответственно имена и id input'ов тоже каждый раз разные.
Что бы было понятно:
<?php
			$queryonerazd = mysql_query("SELECT `id`,`podrazdel`,`devnamesm`,`defkol`,`stoim` FROM `smdevice` WHERE `razdel` = '1' AND `notuse` = '0' AND `smuse` = '1' ORDER BY `podrazdel` ASC") or die(mysql_error());
			  if (mysql_num_rows($queryonerazd) > 0) {
			    while ($arronerazd = mysql_fetch_assoc($queryonerazd)) { 
?>

<tr>
              <td>&nbsp;1.<?php echo $arronerazd['podrazdel']; ?><input type='text' name='<?php echo $arronerazd['id']; ?>' value='<?php echo $arronerazd['id']; ?>' style='display:none' /></td>
              <td>&nbsp;<?php echo $arronerazd['devnamesm']; ?></td>
              <td><input type='text' name='defcol<?php echo $arronerazd['id']; ?>' value='<?php echo $arronerazd['defkol']; ?>' /></td>
              <td><input type='text' name='cena<?php echo $arronerazd['id']; ?>' value='<?php echo $arronerazd['stoim']; ?>' /></td>
              <td><input type='text' name='summye<?php echo $arronerazd['id']; ?>' value='' /></td>
              <td><input type='text' name='summrur<?php echo $arronerazd['id']; ?>' value='' /></td>
              <td><input type='checkbox' name='arn<?php echo $arronerazd['id']; ?>' value='1' /></td>
</tr>

<?php  
                }
			  }
			mysql_free_result($queryonerazd);
?>

В результате получается чтото типа этого:
<tr>
              <td>&nbsp;1.1<input type='text' name='3' value='3' style='display:none' /></td>
              <td>&nbsp;Блок РЕКС 2В</td>
              <td><input type='text' name='defcol3' value='' /></td>
              <td><input type='text' name='cena3' value='300.00' /></td>
              <td><input type='text' name='summye3' value='' /></td>
              <td><input type='text' name='summrur3' value='' /></td>
              <td><input type='checkbox' name='arn3' value='1' /></td>
</tr>

Т.е. проще говоря, к каждому имени поля добавляется уникальный ID записи в БД, разделов <tr></tr> может быть сколько угодно много или мало, не суть, суть в том, что каждый раз их разное кол-во.
Нужно следущее: у нас есть колонка с ценой и колонка с кол-вом (cena и defcol соотвтественно). В колонке кол-ва пишем число, которое умножается на цену и в колонках summye и summrur выводятся произведения кол-ва на сумму.
Вроде все просто, если б имена были постоянными, выдернуть значение поля по id никаких проблем не составляет, а как быть в этом случае ?
Единственная мысль, которая летает в голове, это выдернуть число (id) из 1го скрытого поля <input type='text' name='3' value='3' style='display:none' /> и далее уже с ним работать, но как это сделать ?
Посоветуйте алгоритм, пожалуйста.
Ответить с цитированием