Sesuatu seperti ini?
<select name="pulldown1">
<option value="default">Choose an option</option>
<?php
include("connect.php"); /*file where you have stored your DB conn. settings*/
$result = mysql_query('SELECT id, lastname, firstname FROM spusername ORDER BY firstname ASC') or die (mysql_error());
while ($row = mysql_fetch_array($result)) {
echo '<option value="' . htmlentities($row['id'], ENT_QUOTES) . ' ' . htmlentities($row['lastname'], ENT_QUOTES) . ' ' . htmlentities($row['firstname'], ENT_QUOTES) . '">' . htmlentities($row['lastname'], ENT_QUOTES) . ', ' . htmlentities($row['firstname'], ENT_QUOTES) . '</option>';
}
?>
</select>
<select name="pulldown2">
<option value="default">Choose and option</option>
<?php
$result = mysql_query('SELECT traingtype FROM trainingtable ORDER BY trainingname ASC') or die (mysql_error());
while ($row = mysql_fetch_array($result)) {
echo '<option value="' . $row['trainingtype'] . '">' . $row['trainingtype'] . '" "' . $row['lastname'] . '</option>';
}
?>
</select>
Ini akan menghasilkan dua menu dropdown di mana dropdown pertama mencantumkan nama belakang dan nama depan pengguna dipisahkan oleh koma+spasi dan yang kedua akan mencantumkan berbagai jenis pelatihan. ID yang diajukan hanya dikirim melalui variabel, tetapi tidak ditampilkan kepada pengguna.
Saat menarik nilai dari variabel di pulldown1, cukup gunakan meledak:
$userdetails = $_POST['pulldown1'];
$values = explode(" " $userdetails);
$ID = $values[0];
$lastname = $values[1];
$firstname = $values[2];
Belum menguji kode sehingga mungkin perlu penyesuaian, dan tentu saja Anda perlu mengubah nama variabel yang sesuai dengan nama baris db Anda yang sebenarnya.
Sunting:Dalam kode Anda, Anda harus menggunakan $row dan bukan $row2.
Kedua, alih-alih ini:
<option value='{$id}'>{$lastname},{$firstname}</option>
gunakan ini:
<option value="' . $row['id'] . '">' . $row['lastname'] . ', ' . $row['firstname'] . '</option>