Dynamisch Selectbox erstellt nun werte in PHP auslesen... Nur wie?

Davicito

Erfahrenes Mitglied
Hi,
ich benötige mal Eure Hilfe in Sachen JS und PHP...

Ich erzeuge nach Aufruf, einer Seite, aus einem Formular heraus mehrerer dynamische Selectboxen, durch onChange. S.Code-Schnipsel
PHP:
...
<?php
	echo'<form name="formid" >';
	echo'<select name="selectid[]" onChange="knAuswahlFeld(this)">';
       	echo'<option> </option>';
									
		while($row_dat = mysql_fetch_object($result_dat) 
        {
            		echo'<option value='.$row_dat->Kunden_ID.'> '.$row_dat->Kunden.'</option>';
		}               
				
        echo'</select>';	
                    
        echo'<input type="Button" name="anlegen" value="Anlegen">';
        echo'</form>';
	
?>
Javascript:
<script>
	function knAuswahlFeld(obj)
	{				
		if(obj.options[obj.selectedIndex].text != 0)
		{					
			//Aktuelle übergebene Selectbox(obj) wird geklont 
			var newSelectElement = obj.cloneNode(true);
			//Entzieht der aktuellen Selectbox die onChange-Eigenschaft
			obj.removeAttribute("onchange");	
			//Weißt jeder geklonten Selectbox einen neuen Namen zu
			var count = formid.length;
			newSelectElement.setAttribute("name", "selectid"+[count+1]);
					
			// Erstellt ein ZeilenumbruchKnoten <br>
			var br = document.createElement("br");
			        //Fügt ein TagNode <br> - für Zeilenumbruch ein - in das Formular ein
			       document.formid.appendChild(br);
			        //Fügt neue Selectbox(NodeElement) in das Formular hinzu.	
			       document.formid.appendChild(newSelectElement);												
		}
		else alert("Bin leer");
	}			
</script>

Jetzt habe ich eine Verständnisfrage... Wenn ich nun mein Formular Button klicke, sollen die Werte der Selectboxen aus dem JavaScript in PHP-Code übermittelt werden. um diese in eine MySQL-Datenbank zu überführen

Daten/Werte aus den Selectboxen in Datenbank überführen: Wie?
PHP:
<?php
...
if(isset($_POST["b"]))
{
	while(...)  // Schleife für alle Werte der Selexboxen
        {
          mysql_query("INSERT INTO 
					einsatzort
				SET 
					Personal_ID = ".mysql_insert_id().", 
					Kunden_ID = ".$_POST['einOrt']."         // wie schreibe ich das am besten?
			       ") OR die ("Fehler: ".mysql_error());
         }
}
?>

Kann mir einer helfen? Wie bekomme ich aus JS alle Werte, um diese im obigen PHP-Code in die DB zu setzten?
Gruß.
 
Zuletzt bearbeitet von einem Moderator:
Hier meine funktionierende Lösung, falls es jemanden interessieren mag:

PHP:
...
if(isset($_POST["b"]))
{
        $tmpID = mysql_insert_id();
	foreach($_POST as $key => $value)
	{
        //Filter, berücksichtigt nur alle Werte der Selectboxen - ungleich  
        //"null" - aus dem POST eines Formulares!
		if(strncasecmp( $key , "selectid" , 8 ) == 0 && $value != null)
		{
			echo $key."=>".$value."<br>";
			mysql_query("INSERT INTO 
							einsatzort
						SET 
							Personal_ID = ".$tmpID.", 
							Kunden_ID = ".$_POST[$key]." 
     	               ") OR die ("Fehler: ".mysql_error());
		}
	}

Gruß.
 
Zuletzt bearbeitet:
Zurück