Florian C.: Abfrage dynamisches Formularfeld

Beitrag lesen

Moin liebe Community,

ich versuche derzeit in HTML ein Formular zu erstellen, das dynamisch neue Eingabefelder hinzufügen kann. Derzeit bin ich aber bei dem Problem, wie ich den Namen eindeutig beschreiben kann, damit ich den Input der Eingabefelder auf der nächsten Seite abrufen kann. Ich war am überlegen von der for-Schleife des Java-Skriptes die Variable zu nehmen. Kann mir irgendjemand Lösungsansätze liefern?

index.php:

<script type="text/javascript">
<!--
function clone_this(objButton)
{
if(objButton.parentNode)
    {
    tmpNode=objButton.parentNode.cloneNode(true);
    objButton.form.appendChild(tmpNode);
    for(j=0;j<objButton.form.lastChild.childNodes.length;++j)
        {
        if(objButton.form.lastChild.childNodes[j].type=='text')
            {
            objButton.form.lastChild.childNodes[j].value='';
            break;
            }
        }
    objButton.value="Obere Zutat entfernen";
    objButton.onclick=new Function('f1','this.form.removeChild(this.parentNode)');
    }
}
 
<form action="/inc/rezepte.php" method="POST">  
                        
   <h1>Zutatenliste f&uuml;r <?php echo $Rezeptname; ?></h1>
   <button type="submit" name="zutatenliste">Zutaten festlegen</button>                   
   <button type="button" class="cancelbtn">
   <a href="../">&Uuml;berspringen</button></a>
                            
   <br><label>Zutaten</label>
   <div>
      <input type="text" size="20" name="EINDEUTIGE_ID"><br>
      <input type="button" value="Weitere Zutat hinzuf&uuml;gen" onclick="clone_this(this)">
   </div>
</form>

rezepte.php:

if (isset($_POST['zutatenliste'])) // Wenn Zutaten zum Rezept hinzugefügt werden sollen
{
    print_r($_POST['EINDEUTIGE_ID']);
} 

Derzeit wird halt nur das zuletzt beschriebene Feld ausgegeben, da alle Felder die gleiche ID haben. Wie kann ich nun am besten eine Eindeutige ID für die kopierten Felder festlegen und Abfragen wie viele Felder erstellt und befüllt wurden?

Vielen Dank im Voraus!