behält nicht selected
Christoph
- php
Hallo,
ich habe ein multiple Feld was sich nach einem submit eigentlich das merken sollte was man ausgewählt hat, tut es aber leider nicht.
Hier mal mein Code:
<select size="3" name="av_require[]" multiple="multiple" class="fliesstext">
<?
$values3 = Array("Video VHS","Data Projector (Computer Projection)");
foreach($values3 as $id3)
{
echo "<option value='".$id3."' ".(($id3 == $av_require)?" selected="selected"":"").">".$id3."";
}
?>
</select>
Was ist nur daran falsch?
Grüße
Christoph
schon gelöst.
Hallo,
hättest das nicht früher posten können ;-??
schon gelöst.
ja toll, und wie?
Grüsse
Frankie
Hallo,
so:
$values3 = Array("Video VHS","Data Projector (Computer Projection)");
foreach($values3 as $id3)
{
if(in_array($id3, $_REQUEST['av_require']))
{
$selected = ' selected="selected"';
}
else
{
$selected = '';
}
print '<option value="'.$id3.'"'.$selected.'>'.$id3.'</option>'."\n";
}
Grüße
Christoph
hi,
das kommt ja meiner Lösung sehr nahe :-)
Eigentlich hatte ich gehofft, dass Du vielleicht eine andere Lösung gefunden hast. Hätte mich interessiert, denn man lernt ja nie aus.
Schönen Tag noch.
Grüsse
Frankie
Hallo,
<select size="3" name="av_require[]" multiple="multiple" class="fliesstext">
<?
$values3 = Array("Video VHS","Data Projector (Computer Projection)");
foreach($values3 as $id3)
{
echo "<option value='".$id3."' ".(($id3 == $av_require)?"
^^^^^^^^
das geht so nicht, da $av_require ein Array ist, also die Bedingung niemals erfüllt wird.
Eine weitere Fehlermöglichkeit wäre, dass z.B. register_globals off sind, aber vielleicht hast du das ja schon bedacht.
Probiere mal:
echo "<option value='".$id3."' ".((in_array($id3,$_REQUEST['av_require']))?" selected="selected"":"").">".$id3."\n";
Natürlich kannst Du statt $_REQUEST auch $_POST bzw. $_GET nehmen.
HTH.
Grüsse
Frankie