Wert aus Array wird nicht in Option-Box übernommen
M.Dessel
- php
Hallo zusammen,
ich habe eine Reihe von Eingabefeldern in einem Formular.
Diese werden bei Bedarf aus einer MySQL-Datenbank importiert
editiert und anschließend wieder abgespeichert.
Ich lese die Werte aus einem durch eine SQL-Abfrage gewonnenen Array
in die Felder ein.
Bei den einfachen Feldern <INPUT Type "Text"...> Feldern funktioniert
es auch. Die Werte werden dem Array entnommen und in das jeweilige INPUT Feld eingetragen.
Benutze ich aber ein <SELECT OPTION> Feld, so funktioniert die Wert übergabe aus dem Array nicht, obwohl der Wert im Array gespeichert steht(Habe ich überprüft). Ich kann aber in diesem Feld ein Wert auswählen und in die Datenbank speichern. Nur mit dem wiedereinlesen klappt es nicht.
schon mal vielen Dank für Eure Hilfe
Codefetzen:
print("<tr>\n\t
<td width="20%" class="label">
$inputfields[12]
</td>\n
<td class="inputbox">
<input type="text" name="Geburtsdatum" size="25"
maxlength="25" value="$array[23]">
</td>\n
</tr>\n");
print("<tr>\n\t
<td width="20%" class="label">
$inputfields[13]
</td>\n
<td class="inputbox">
<select name="Mappe_vollst" size="0" value="$array[24]" >
<option value="Ja">Ja
<option value="Nein">Nein
</select>
</td>\n
</tr>\n");
Hi,
print("<tr>\n\t
bist Du sicher, dass Du tabellarische Daten vorliegen hast?
<select name="Mappe_vollst" size="0" value="$array[24]" >
<select>-Elemente haben kein value-Attribut. Wie so oft: Codes *erst* validieren.
Cheatah
Hi Cheatah,
zu 1) Ja es handelt sich um eine tabellarische Darstellung.
zu 2) Und wie bkomme ich jetzt an meinen Wert???
gruss Manfred
Moin Manfred,
zu 1) Ja es handelt sich um eine tabellarische Darstellung.
zu 2) Und wie bkomme ich jetzt an meinen Wert???
In dem Du nachschaust wie man eine select box in html korrekt mit options versieht.
http://de.selfhtml.org/html/formulare/auswahl.htm#listen
TomIRL
Morgen Tom,
an welcher Stelle habe ich denn Deiner Meinung nach gegen HTML Konventionen verstoßen.
Ich habe doch lediglich die Schreibweise an PHP angepasst.
gruss Manfred
Moin Manfred,
an welcher Stelle habe ich denn Deiner Meinung nach gegen HTML Konventionen verstoßen.
Ich habe doch lediglich die Schreibweise an PHP angepasst.
Wie schrieb Cheatah:
<select name="Mappe_vollst" size="0" value="$array[24]" >
Ein select kennt keinen value...
Sondern options...
TomIRL
P.S. Versuche es mal mit erst frühstücken und dann arbeiten !
Hallo Tom,
ich habe jetzt ausgiebig gefrühstückt. Danach habe ich den Teil mit value gelöscht.
Doch getan hat sich eigentlich nichts.
gruss Manfred
Also noch mal:
Selcect Felder bieten üblicherweise die Möglichkeit ein oder mehrere Werte zu übertragen.
Das heißt wenn Du ein Select Feld vorbelegen willst mußt Du folgendes machen:
1. Du mußt die Felder die als Select angezeigt werden sollen auslesen und ausgeben.
2. Du mußt prüfen ob der Wert mit dem aus der Datenbank übereinstimmt, dann mußt Du dem <option> ein selcted mitgeben.
Kleiner Tip überprüfe doch mal ob Dein Select Feld nicht unter Umständen ein Array überträgt.
Hallo ,
ich habe jetzt ausgiebig gefrühstückt. Danach habe ich den Teil mit value gelöscht.
Doch getan hat sich eigentlich nichts.
<select name="Mappe_vollst" ... >
<option value="Ja" <? if ($array[24]=="JA") {echo " selected "} ?> >Ja
<option value="Nein" <? if ($array[24]=="NEIN") {echo " selected " ?>} >Nein
</select>
es muss natürlich geprüft werden ,ob Optionen gesetzt sind
mfg
Danke,
hat zwar eine Weile gedauert, aber ich hab's begriffen. Es funktioniert
gruss Manfred