Insert in MySQL mit PHP - DropDown Frage

Hallo zusammen - ich habe schon wieder ein Problem... :rolleyes:

Ich habe einen code geschrieben der dem User ermoeglicht aus einer Tabelle (durch ein Dropdown) einen Datensatz auszuwaehlen.

PHP:
$getOS = "select os from os order by os";
$getOSRes = mysql_query($getOS, $connection) or die(mysql_error());

if (mysql_num_rows($getOSRes) <1) //checks to see if there is more than 1 os in db
{
	// if there are no operating systems
	$display .= "<p>Sorry, there are no operating systems in the database yet </p>";
} else {
		$display .= "
		<form method=\"POST\" action=\"insertcd1.php\"><br>
		<strong>Operating System:</strong><br>
		<select name=\"os_id\">
		<option value=\"\"> -- Select one --</option>";

				while ($record = mysql_fetch_array($getOSRes))
			{
				$id = $record['os'];
				//cleans any special characters out of db
				$os = stripslashes ($record['os']);
				//to the already created display1, adds os to the menu
				$display .="<option value=\"$id\"> $os </option>";

			}
			$display .= "</select>";
		}
Das klappt auch ohne Probleme.
Mein Problem ist nun dass ich mit dem Ergebniss des Users einen Insert in eine andere Tabelle vornehmen moechte - dort soll der Insert allerdings die ID des gewaehlten Datensatzes uebernehmen, und nicht den Namen.

Was ich damit meine ist folgendes - in meiner OS Tabelle habe ich zwei Felder: OSID und OS. Was ich beim oberen Code rausbekomme sind die Eintraege fuer OS (also z.B. Windows, AIX, usw...) Dies soll fuer den User auch so sein aber in der anderen Tabelle in die ich das Insert machen will, ist die OS Tabelle mit dem OSID Feld verknuepft und nicht mit dem OS Feld.
Wie schaffe ich es dass der User beim Auswaehlen des OS beim Abschicken der Form das ID des Datensatzes uebertraegt und nicht den Namen?

Ich hoffe ich habe mich verstaendlich ausgedrueckt - kann leider nicht mehr so klardenken, sitz hier schon seit geraumer Zeit dran ;)

Danke schon mal fuer eure Zeit!
 
Hallo,

such doch einfach nach dem Namen in der einen Tabelle - dann hast du die ID die kannst du dann in der zweiten Tabelle Speichern.
Ich persönlich würde jedoch über dein Formular nur die ID übergeben - den Namen kannst ja trotzdem in dein Dropdown schreiben.
 
Hi dwex,

danke fuer die Antwort :)
Bin dennoch verwirrt... wie kann ich den Namen in das DropDown speichern wenn ich doch den ID aus der Tabelle hole? Der while loop holt sich doch die Namen aus dem Select und das wird dann weiter an meine naechste php Seite gereicht. Wo wuerde der ID denn in mein while loop passen?
 
Zurück