• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

dropdown-feldern dynamisch <selected>-attribute erteilen

XraYSoLo

Senior HTML'ler
hallo zusammen,

bitte verzeiht mir die etwas bescheuerte frage, aber ich komm' und komm' nicht dahinter.

ich habe ein dropdown-feld mit durchnummerierten werten (value == name), sprich:

HTML:
<select name="drop1" size="1">
   <option value="1">1</option>
   <option value="2">2</option>
   <option value="3">3</option>
</select>

das hier zur vereinfachung, in wahrheit sieht das bei mir so aus:

PHP:
<select size="1" name="drop1">
<?php
for($y = 1; $y <= 80; $y++)
   {
   echo '<option value="'.$y.'">'.$y.'</option>';
   }
?>
</select>

also ein dropdown-feld mit 80 einträgen wird generiert.

ich habe das problem, dass ein ausgewählter wert beim aktualisieren der seite verloren geht und ein reset auf den ersten eintrag (1) erfolgt. ansatz wäre selected="selected", selbst wenn das nicht valide wäre, darauf baut das system auf.

also: ich suche eine möglichkeit (serverseitig bevorzugt), den gewählten wert den seitenbesuch hindurch - bis er zerstört wird - beizubehalten.

wie könnte ich das realisieren?

danke schonmal

Nils aka XraYSoLo
 
Werbung:
Werbung:
Serverseitig ist immer mittels Sessions eine gute variante ;)

kannst ja eine Session-Variable machen, welchen den via POST/GET übergebenen Select-Value beinhaltet.
Und wenn du dann in deiner For-Schleife bist, vergleichst du den Session-Varibalen-Wert mit dem gerade zu setztenden "option" wert. Wenn die übereinstimmen, dann setzt du noch das attribut "selected".

quasi so:
Code:
[COLOR=#000000]<select size="1" name="drop1">
[COLOR=#0000bb]<?php
[/COLOR][COLOR=#007700]for([/COLOR][COLOR=#0000bb]$y [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000bb]1[/COLOR][COLOR=#007700]; [/COLOR][COLOR=#0000bb]$y [/COLOR][COLOR=#007700]<= [/COLOR][COLOR=#0000bb]80[/COLOR][COLOR=#007700]; [/COLOR][COLOR=#0000bb]$y[/COLOR][COLOR=#007700]++)
   {
     if($_SESSION['selectwert']==$y)
[/COLOR][/COLOR][COLOR=#000000][COLOR=#007700]       echo [/COLOR][COLOR=#dd0000]'<option value="'[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]$y[/COLOR][COLOR=#007700].[/COLOR][COLOR=#dd0000]'" selected>'[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]$y[/COLOR][COLOR=#007700].[/COLOR][COLOR=#dd0000]'</option>'[/COLOR][COLOR=#007700];
[/COLOR][/COLOR][COLOR=#000000][COLOR=#007700]     else
       echo [/COLOR][COLOR=#dd0000]'<option value="'[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]$y[/COLOR][COLOR=#007700].[/COLOR][COLOR=#dd0000]'">'[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]$y[/COLOR][COLOR=#007700].[/COLOR][COLOR=#dd0000]'</option>'[/COLOR][COLOR=#007700];
   }
[/COLOR][COLOR=#0000bb]?>
[/COLOR]</select>[/COLOR]

Oder?
 
Zurück
Oben