как передать скрипту форму с неопределенным количеством и именами полей

Статус
В этой теме нельзя размещать новые ответы.

macros

Guest
как передать скрипту форму с неопределенным количеством и именами полей

Скриптом из базы генерится форма с неопределенным количеством однотипных полей с проверкой javascript'ом.
без кода дольше описывать
В этом фрагменте 2 строки в реальности их конечно больше к уникальному коду продукта спереди конкатенируется имя поля или переменной

PHP:
<html>
<head>
<title>Форма</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
</head>
<script language="JavaScript">
<!--
// Эта функция отличает НЕцифровые символы и НЕкратные значения.
function checkIt (unique){
colunique = "col" + unique;
minunique = "min" + unique;
sumunique = "sum" + unique;
prunique = "pr" + unique;
if (document.forms["f"].elements[colunique].value % document.forms["f"].elements[minunique].value > 0) {
document.forms["f"].elements[colunique].value = 0;
document.forms["f"].elements[sumunique].value = 0;
alert ("Необходимо вводить числа кратные минимальной партии.");
}
else {
document.forms["f"].elements[sumunique].value = parseFloat(document.forms["f"].elements[prunique].value) * parseInt(document.forms["f"].elements[colunique].value);
}
if (document.forms["f"].elements[sumunique].value == "NaN"){
document.forms["f"].elements[colunique].value = 0;
document.forms["f"].elements[sumunique].value = 0;
alert ("Ай, дарагой... Арабски цифра знаишь? ара...");
}}
//-->
</script>
<body bgcolor="#FFFFFF">
<form method="post" action="" name="f">
  <h4>Огурцы </h4>
  <table width="100%" border="0" cellspacing="2" cellpadding="5">
    <tr bgcolor="#EEEEEE"> 
      <td>Наименование</td>
      <td>ед. изм.</td>
      <td>цена за единицу</td>
      <td>минимальная партия </td>
      <td>кол-во</td>
      <td>сумма</td>
    </tr>
    <tr bgcolor="#EEEEEE"> 
      <td>зеленные</td>
      <td>кг.</td>
      <td>9.90 
        <input type="hidden" name="pr00056" value="9.90">
      </td>
      <td>1 
        <input type="hidden" name="min00056" value="1">
      </td>
      <td> 
        <input type="text" name="col00056" value="0" onChange="checkIt('00056');" size="4" >
      </td>
      <td> 
        <input type="text" name="sum00056" value="0" size="6">
      </td>
    </tr>
    <tr bgcolor="#EEEEEE"> 
      <td>Желтые</td>
      <td>тонны</td>
      <td>4.80 
        <input type="hidden" name="pr231" value="4.8">
      </td>
      <td>7 
        <input type="hidden" name="min231" value="7">
      </td>
      <td> 
        <input type="text" name="col231" onChange="checkIt('231');" size="4">
      </td>
      <td> 
        <input type="text" name="sum231" size="6">
      </td>
    </tr>
  </table>
    <input type="submit" name="Submit" value="Submit">
    <input type="reset" name="Submit2" value="Reset"> 
</form>
</body>
</html>
как все это хозяйство передать другому скрипту(в виде массива?). Ведь заранее неизвестно ни количество ни имена полей
 

Rezec

По пиву? (socket80)
Может натолкнет на мысль ...
PHP:
foreach($_POST as $key=>$value){
	echo "$key - $value";
}
 

Ashotovich

Новичок
Не совсе понятно, что имеется в виду. Если форму передавать другому скрипту через GET или POST, то в любом случае передадутся в виде элементов массива все элементы формы, имеющие свойство name, так что тут нечего решать.

Или имелось в виду как выводить в форму неизвестное количество элементов? Тогда ясно как - в цикле. А name каждому присваивать однотипное с прибавлением какого-нибудь уникального значения, которое с каждой фазой цикла увеличивается на 1.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху