24. februar 2009 - 14:41Der er
3 kommentarer og 1 løsning
loop af rs sætning ind i en sql select sætning
jeg har 2 select sætninger, den første udvælger gruppen af artikler, den anden select sætning vælger alle artikler og billeder fra db, ud fra gruppen.
problemet er at varRsVis = rsVis("aid")laver ingen loop, den udskriver kun den første eller sidste post i tabellen, som passer til den gruppe jeg vil udskrive, jeg vil gerne have den til at loop alle artikler som høre ind under den gruppe ?
case "vis"
varGruppe = Request.QueryString("gruppe") sqlVis = "SELECT * FROM tbartikel WHERE tbartikel.gruppe="&varGruppe&" " set rsVis = conn.execute(sqlVis)
varRsVis = rsVis("aid")
sqlartikel = "SELECT * FROM tbbilleder, tbartikel WHERE tbartikel.aid="&varRsVis&" AND tbbilleder.bartikel="&varRsVis&"" set rsartikel = conn.execute(sqlartikel)
Det ser for mig ud til at du laver lidt dobbeltarbejde med dine SQL-sætninger. Jeg vile umiddelbart bare lave en JOIN mellem billeder og artikel og så iterere igennem resultatet...
case "vis"
varGruppe = Request.QueryString("gruppe")
if not isnumeric(varGruppe) then ' STANDS forsøg på "snyd"... Response.Write "Ugyldig gruppe!" Response.End end if
sqlartikel = "" & _ "SELECT * " & _ "FROM tbbilleder b " & _ "INNER JOIN tbartikel a ON a.id = b.aid " & _ "WHERE a.gruppe = " & varGruppe set rsartikel = conn.execute(sqlartikel)
do until rsartikel.eof %> <div id="blaarammetilgalleri"> <%=rsartikel("overskrift")%> </div> <div id="teksttilgalleri"> <%=rsartikel("brodtekst")%> </div> <div id="billedetilgalleri"> <img src="upload/<%=rsartikel("bnavn")%>.jpg" /> </div> <% rsartikel.movenext loop rsartikel.close set rsartikel = nothing conn.close set conn = nothing %>
Grunden til at din egen version ikke fungerer er dog, at du ikke itererer over rsVis-resultatet, men kun aflæser den første rækkes id. Du skulle altså have en løkke mere ind i din egen kode for at det skal fungere. Jeg vælger dog at illustrere en mere effektiv metode for dig i mit eksempel... :-)
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.