Avatar billede Slettet bruger
26. december 2003 - 11:40 Der er 3 kommentarer og
1 løsning

select option

min nuværende kode
echo "<tr>\n";
echo "<td>Bnc vhost</td>\n";
echo "<td><select name=\"vhost\">\n";
echo "<option value=\"0\">Vælg vhost</option>\n";
   
$query3 = "SELECT * FROM `vhosts` ORDER BY `navn` ASC";
$result3 = mysql_query($query3) or die("MySQL Query fejl");

while ($row3 = mysql_fetch_array($result3)) {
echo "<option value=\"".$row3['navn']."\">".$row3['navn']."</option>\n";
}
   
echo "</select>\n";
echo "</td>\n";
echo "</tr>\n";

Nu er det sådan... Jeg vi gerne have den til at selecte den værdi der er sat i et felt i min database.

Eksempel: bruger har vhost5 i sin profil derfor:

<option value="0">Vælg vhost</option>
<option value="vhost1">vhost1</option>
<option value="vhost2">vhost2</option>
<option value="vhost3">vhost3</option>
<option value="vhost4">vhost4</option>
<option value="vhost5" selected="selected">vhost5</option>
<option value="vhost6">vhost6</option>
Avatar billede nicklasb Nybegynder
26. december 2003 - 11:44 #1
du har din variabel med vhost5, fx kaldet $var. Så laver du bare din whileløkke således i stedet;

while ($row3 = mysql_fetch_array($result3)) {
echo '<option value="' . $row3['navn'] . '"';
if ($row3['navn'] == $var) {
echo ' selected="selected"';
echo '>' . $row3['navn'] . '</option>
';
}

og så tag at bruge '-er i stedet for "-er som i mit eksempel nu du allerede så flot bruger punktummer.. der er i sidste ende lidt tid at spare.. :D
Avatar billede nicklasb Nybegynder
26. december 2003 - 11:45 #2
hov..

while ($row3 = mysql_fetch_array($result3)) {
echo '<option value="' . $row3['navn'] . '"';
if ($row3['navn'] == $var) {
echo ' selected="selected"';
}                                      // Manglede.. ;)
echo '>' . $row3['navn'] . '</option>
';
}
Avatar billede Slettet bruger
26. december 2003 - 12:01 #3
jeg takker , husk lige at lave et svar.
Avatar billede nicklasb Nybegynder
26. december 2003 - 12:04 #4
jo, selvfølgelig.. ;)

Hvis du endelig skal spare RIGTIG meget tid (vi taler her om.. dadadadaaaa.. millisekunder, pga. sidens lille genereringstid.. Men sku alligevel en hel del.. :), skal du før løkken oprette en variabel, og så i stedet for at printe din tekst løbende ligge teksten ned i føromtalte variabel.. Især meget tid at spare hvis du har mange rows der skal printes.. I dit eksempel vil det se således ud;

$printvar = '';
while ($row3 = mysql_fetch_array($result3)) {
$printvar .= '<option value="' . $row3['navn'] . '"';
if ($row3['navn'] == $var) {
            $printvar .= ' selected="selected"';
}
$printvar .= '>' . $row3['navn'] . '</option>
';
}
echo $printvar;

/Nicklas B.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester