Hallo,
ich habe ein Formular erstellt mit einem Drop Down das aus der Datenbank gefüllt wird mit Hundename und ein Input Feld falls der Name dort nicht steht.
Bei speichern wird der Name gespeichert und wenn im Dropdown vorhanden auch ID - wenn im Inputfeld eingetragen dann der Name und als ID immer 0 soweit kein Problem.
Das ist der Code dazu:
PHP-Code:
<td style="width: 249px;">
<?php
$abfrage = "SELECT DISTINCT * FROM zuchthunde ORDER BY h_name ASC";
$ergebnis = mysql_query($abfrage);
echo '<select size="1" name="hund">';
echo '<option>Bitte Hund auswählen</option>';
while($row = mysql_fetch_object($ergebnis)){
$ah_id = $row->h_id;
$ah_name = $row->h_name;
if ($ah_name == $sportergebnisse['sp_hund'])
{
echo '<option value="'.$ah_name.'_'.$ah_id.'" selected="selected">'.$ah_name.'</option>';
} else {
echo '<option value="'.$ah_name.'_'.$ah_id.'">'.$ah_name.'</option>';
}
}
echo ' </select>';
?>
<input name="hund1" id="textfeld" size="40" maxlength="100" value="<?= $sportergebnisse['sp_hund'] ?>" type="text">Bei Auswahl aus DropDown dieses Feld leeren
</td>
Wenn ich den Datensatz jetzt wieder aufrufe wird alles korrekt angezeigt und wie gewünscht der gesetzte Name im Dropdown und im Inputfeld angezeigt.
Und jetzt kommt mein Problem. Wenn ich jetzt einen anderen Namen aus dem Dropdown wähle und den Text nicht aus dem Inputfeld lösche wird zwar der Name gespeichert aus dem Dropdown, aber die ID bleibt 0
Hier ein Auszug aus den Post Variablen:
PHP-Code:
$hund_text = trim($_POST['hund1']);
$hundexp=explode('_',$_POST['hund']);
if ($hund_text == "") {
$hund = trim($hundexp[0]);
$hund_id = $hundexp[1];
} else {
$hund = trim($hund_text);
$hund_id = "";
}
Ich steh auf dem Schlauch wie ich bei der If Abfrage dies mir berücksichtigen kann ?