Il codice (soprattutto i tags delle tabelle) sono un gran groviglio, ma cmq diciamo che il concetto è questo:
Codice PHP:
<FORM method="post" enctype="multipart/form-data" action="inser_scheda.php?login=<? echo $login;?>" name="inserisci" onsubmit="return valida_form()" >
<TABLE><TR>
<TD>Numero SRP</TD><TD><INPUT name="id_progressivo"></TD>
<TD>Data</TD><TD><INPUT name="data"></TD>
</TR>
<TR>
<TD>Responsabile</TD><TD><INPUT name="responsabile"></TD>
<TD>Tipo</TD><TD><INPUT name="ente"></TD>
</TR>
<TR>
<TD>Prodotto / Problema</TD><TD><INPUT name="problema"></TD>
</TR>
</TABLE>
<TABLE><TR><TD>
<?php
if(!isset($_GET['n'])) { $n = 1; }
else { $n = $_GET['n']; }
for($i=1;$i<=$n;$i++)
{ ?>
<TABLE><TR>
<TD>Causa <?php print($i); ?></TD>
<TD>Priorità</TD>
<TD><select name="per_contr_<?php print($i); ?>">
<OPTION SELECTED VALUE = 0 >0</option>
<OPTION VALUE = 1 >1</option>
<OPTION VALUE = 2 >2</option>
<OPTION VALUE = 3 >3</option>
<OPTION VALUE = 4 >4</option>
</select>
</TD>
<TD>
<TABLE id=tab_som>
<TR id=modello>
<TD id=qta>Prog.:<INPUT name="a<?php print($i); ?>"></TD>
<TD id=d1l>Resp.:<INPUT name="b<?php print($i); ?>"></TD>
<TD id=d2l>Data:<INPUT name="c<?php print($i); ?>"></TD>
<TD id=tasti><input type = "button" value ="I" onClick="aggiungi()">
<input type="button" value ="C" name="<?php print($i); ?>" onClick="cancella(this.name)">
</TD>
</TR>
<TR id=modello2>
<TD id=rot>Data<INPUTname="d<?php print($i); ?>"></TD>
</TR>
<TR id=modello3>
<TD id=ins colspan=3>
<fieldset>
<legend>AZIONE</legend>
<TEXTAREA name="azione<?php print($i); ?>">
</TEXTAREA>
</fieldset>
</TD>
</TR></TABLE>
</TD>
</TR>
<TR>
<TD><TEXTAREA name="fattore<?php print($i); ?>">
</TEXTAREA></TD>
</TR>
</TABLE>
<?php } ?>
Con questo codice, in base al valore di $_GET['n'], si generano N forms.
Ad esempio se il codice che ho postato lo salvi come "inserimento.php", prova a scrivere nel browser "inserimento.php?n=5" e vedi se è quello che volevi.