/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Select liste hentet fra mysql database
Fra : j p


Dato : 23-05-10 11:20

Jeg har følgende kode, som skal vise hvilken værdi fra database
der er valgt og i listen skal kunne vælges en ny.

Variablen "ting" er den valgte vare som kommer fra en anden
database.

Listen er en liste som kan ændres.

Som kode er her vises korrekt rs("id") men ikke at den er
selected og rs("katagori") vises ikke korrekt men den viser den
første på listen.

Nogle gode forslag?

Database butik_1 er sådan ud

id katagori
1 DameTøj
2 HerreTøj
3 BørneTøj
4 BabyTøj
.....O.s.v





<%
strsql = "Select id,katagori From butik_1"
Set rs = Conn.Execute(strSQL)
%>

<select name="select">
<% do while not rs.eof %>
    <option <% If rs("id") = " & =ting & " Then Response.Write
"selected" else Response.Write "" End If
%>><%=rs("katagori")%></option>

<%rs.movenext
loop %>
</select>

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Leif Neland (23-05-2010)
Kommentar
Fra : Leif Neland


Dato : 23-05-10 12:16

j p skrev:
> Jeg har følgende kode, som skal vise hvilken værdi fra database
> der er valgt og i listen skal kunne vælges en ny.
>
> Variablen "ting" er den valgte vare som kommer fra en anden
> database.
>
> Listen er en liste som kan ændres.
>
> Som kode er her vises korrekt rs("id") men ikke at den er
> selected og rs("katagori") vises ikke korrekt men den viser den
> første på listen.
>
> Nogle gode forslag?
>
> Database butik_1 er sådan ud
>
> id katagori
> 1 DameTøj
> 2 HerreTøj
> 3 BørneTøj
> 4 BabyTøj
> ....O.s.v
>
>
>
>
>
> <%
> strsql = "Select id,katagori From butik_1"
> Set rs = Conn.Execute(strSQL)
> %>
>
> <select name="select">
> <% do while not rs.eof %>
>     <option <% If rs("id") = " & =ting & " Then Response.Write
> "selected" else Response.Write "" End If
> %>><%=rs("katagori")%></option>
>
> <%rs.movenext
> loop %>
> </select>
>

(Jeg retter lige din kode ud)
Inde i din løkke:

Denne "if" giver ikke mening:

If rs("id") = " & =ting & " Then
Response.Write "selected"
else
Response.Write ""
End If

rs("id") er næppe nogensinde lig " & = ting & "

Du skal blot skrive
If rs("id") = ting then
Response.Write " selected"
end if

Ingen grund til at have else response.write ""

Så mangler du også en value i din option:

<option value='<%=rs("id")%>
<% if rs("id") = ting then response.write " selected" end if
'husk mellemrum foran " selected"
response.write ">"&rs("katagori") %>
</option>


Så synes jeg i øvrigt at det er noget rod at hoppe så meget ind og ud af
asp med <% %> i hver linie, jeg foretrækker at sætte tingene sammen i
response.write som f.ex.
response.write "<option
value='"&rs("id")&"'>"&rs("katagori")&"</option>"&vbCrLf

Men det er jo en smagssag.

Leif

--
Jeg foretrækker min the tilberedt efter BS6008

j p (23-05-2010)
Kommentar
Fra : j p


Dato : 23-05-10 12:37

Leif Neland wrote in dk.edb.internet.webdesign.serverside.asp:
> j p skrev:
> > Jeg har følgende kode, som skal vise hvilken værdi fra database
> > der er valgt og i listen skal kunne vælges en ny.
> >
> > Variablen "ting" er den valgte vare som kommer fra en anden
> > database.
> >
> > Listen er en liste som kan ændres.
> >
> > Som kode er her vises korrekt rs("id") men ikke at den er
> > selected og rs("katagori") vises ikke korrekt men den viser den
> > første på listen.
> >
> > Nogle gode forslag?
> >
> > Database butik_1 er sådan ud
> >
> > id katagori
> > 1 DameTøj
> > 2 HerreTøj
> > 3 BørneTøj
> > 4 BabyTøj
> > ....O.s.v
> >
> >
> >
> >
> >
> > <%
&gt; > strsql = "Select id,katagori From butik_1"
&gt; > Set rs = Conn.Execute(strSQL)
&gt; > %>
> >
> > <select name="select">
> > <% do while not rs.eof %>
> >     <option <% If rs("id") = " & =ting & " Then Response.Write
&gt; > "selected" else Response.Write "" End If
&gt; > %>><%=rs("katagori")%></option>
> >
> > <%rs.movenext
&gt; > loop %>
> > </select>
> >
>
> (Jeg retter lige din kode ud)
> Inde i din løkke:
>
> Denne "if" giver ikke mening:
>
> If rs("id") = " & =ting & " Then
> Response.Write "selected"
> else
> Response.Write ""
> End If
>
> rs("id") er næppe nogensinde lig " & = ting & "
>
> Du skal blot skrive
> If rs("id") = ting then
> Response.Write " selected"
> end if
>
> Ingen grund til at have else response.write ""
>
> Så mangler du også en value i din option:
>
> <option value='<%=rs("id")%>
> <% if rs("id") = ting then response.write " selected" end if
&gt; 'husk mellemrum foran " selected"
&gt; response.write ">"&rs("katagori") %>
> </option>
>
>
> Så synes jeg i øvrigt at det er noget rod at hoppe så meget ind og ud af
> asp med <% %> i hver linie, jeg foretrækker at sætte tingene sammen i
> response.write som f.ex.
> response.write "<option
> value='"&rs("id")&"'>"&rs("katagori")&"</option>"&vbCrLf
>
> Men det er jo en smagssag.
>
> Leif
>
> --
> Jeg foretrækker min the tilberedt efter BS6008


Hej Leif,

Super, tak for dit hurtige brugbare svar....koden virker fint nu.

mvh


--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408924
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste