webForumDet fria alternativet

Få in värde i en dropdown

PHP

2 svar · 314 visningar · startad av dahlgren

Medlem sedan aug. 20011 946 inlägg
Frågan#1

Jag har en dropdown meny som ser ut så här.

    <select name="position" id="select5">
      <option value="1">1</option>
      <option value="2">2</option>
      <option value="3">3</option>
      <option value="4">4</option>
      <option value="5">5</option>
      <option value="6">6</option>
      <option value="7">7</option>
      <option value="8">8</option>
      <option value="9">9</option>
      <option value="10">10</option>
    </select>

Hur ska jag göra för att den ska ställa ett värde från databasen som förvalt? Tex att $r['postion'] är 5 så ska det vara förvalt. Hur löser man det?

Medlem sedan dec. 1999757 inlägg
#2

Nu skrev du inte hur du hämtar de övriga så då gjorde jag en loop för att illustrera det hela

<?php
echo '<select name="position" id="select5">';
for ($i=1; $i <= 10; $i++) {
	if ($r['postion'] == $i ) { $selected = ' selected'; } else { $selected = ''; }
	echo '<option value="' . $i . '"' . $selected . '>' . $i . '</option>' . "\n";
}
echo '</select>';
?>

så själva for-loopen har egentligen inte med det hela att göra då du får jämföra $r['postion'] med den variabel du har. Antingen om det är en statisk select eller om den hämtas från en db.

Medlem sedan okt. 20001 285 inlägg
#3

Prova

<select name="position" id="select5">
<?
for ($i = 1;$i < 11; $i++) {
	echo "<option value=\"$i\"";
	if ($i == 5) { echo " selected=\"selected\"; }
	echo ">$i</option>";
}
?>
</select>

EDIT: Oj .. ser att någon hann före :D - tog det verkligen 13 minuter för mig att skriva detta ?

261 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
134 ms — deklarationer (db)
0 ms — hämta statistik (cache)
124 ms — hämta tråd, inlägg och bilagor (db)
134 ms — ändringar (db)