webForumDet fria alternativet

loop i loop problem

1 svar · 317 visningar · startad av Qonos

QonosMedlem sedan sep. 2000451 inlägg
#1

När jag har en loop i en loop så fungerar det inte som jag vill.. jag skall
ha den till att ista upp recept. Ingredienserna ligger i en egen tabell i
databasen och om jag skriver som jag har gjort nedan så loopas alla recept
upp men bara ingredienserna till det första receptet..

//magnus

<%
SQLQuery = "SELECT * FROM tblRecept WHERE pub = 1 AND kategori = " &
Request.QueryString("avdelning") & " ;"
Set receptrs = OBJdbConnection.Execute(SQLQuery)
%>

<%
SQLQuery = "SELECT * FROM tblRecept_ingred WHERE recept = " & receptrs("id")
& " ;"
Set ingredrs = OBJdbConnection.Execute(SQLQuery)
%>

<% Do While Not receptrs.EOF %>
<div class="subrubrik"><%= receptrs("namn") %></div><p>
<ul>
<% Do While Not ingredrs.EOF %>
<LI><%= ingredrs("ingrediens") %>
<% ingredrs.MoveNext
Loop
%>
</ul>
<%= receptrs("beskrivning") %>
</td></tr>
<tr>
<td background="../image/hor-spot.gif"><img src="../spacer.gif"></td>
</tr>
<tr><td>
<% receptrs.MoveNext
Loop
%>

Så här blir resultatet:

BOVETESYLTA 1

11 dl vatten
2 msk grönsaksbuljong
2 lagerblad
4 dl helt bovete
1,5 tsk kryddpeppar
1 tsk nejlikor
2 vitlöksklyftor
1,5 dl korta mungbönsgroddar/gröna ärtor

Koka upp vatten, buljong och lagerblad. Skölj bovetet och tillsätt det och
kryddorna. Pressa över vitlöksklyftorna. Rör om och låt allt koka på svag
värme i ca 20 minuter. Fiska upp lagerbladen och blanda ner groddarna. Häll
massan i kalla sköljda formar (en stor 1,5 liters eller 2 mindre). Låt
syltan svalna i formarna. Serveras med mjölksyrade rödbetor och kryddgurkor.
Syltan kan förvaras i kyl i 3-4 dagar.

BOVETESYLTA 2

Fukta lagerbärsbladen, skölj bovetet, hacka löken. Koka upp vattnet och
buljongen, tillsätt bovete, lök, lagerbärsblad. Låt koka ca 30-35 minuter
tills konsistensen blir fast. Krydda. "Fiska upp" lagerbärsbladen. Häll
massan i kalla kylda formar och ställ dem att svalna. Servera gärna med
rödbetor. OBS! GÅR EJ ATT FRYSA!

BÖNPATÉ 1

Blötlägg kidneybönerna över natten, häll av vattnet och skölj dem. Koka dem
häftigt i 10 minuter. Sänk värmen och koka färdigt tillsamans med senap och
malt. Koka råriset separat. Mixa bönerna, råriset, grönsakerna och delar av
kokvattnet + eventuellt lite olivolja. Tillsätt mer kokvatten och mixa igen
om det behövs. Konsistensen skall vara fast men ej torr. Smaka av med
havssalt eller tamari. Olja en avlång form med lite högre kanter. Använd
gärna lite mjöl och bröa formen. Fördela det mixade i formen och baka allt i
150 grader, längst ner i ugnen ca 1 timme. Servera den varm eller kall
upplagt på ett fat, gärna med senap och citronsås till.

VideMedlem sedan dec. 19996 094 inlägg
#2

Du måste lägga frågan om innehåll inne i loopen för att den skall få ett nytt id varje gång... nu får den ju bara första värdet, vilket som du säger är fel... Testa detta istället:

<% 
SQLQuery = "SELECT * FROM tblRecept WHERE pub = 1 AND kategori = " &
Request.QueryString("avdelning") & " ;" 
Set receptrs = OBJdbConnection.Execute(SQLQuery)
%>

<% 
Do While Not receptrs.EOF 

SQLQuery = "SELECT * FROM tblRecept_ingred WHERE recept = " & receptrs("id")
& " ;" 
Set ingredrs = OBJdbConnection.Execute(SQLQuery)
%>
<div class="subrubrik"><%= receptrs("namn") %></div><p>
<ul>
<% Do While Not ingredrs.EOF %>
<LI><%= ingredrs("ingrediens") %>
<% ingredrs.MoveNext 
Loop

Set ingredrs = Nothing
%> 
</ul>
<%= receptrs("beskrivning") %>
</td></tr>
<tr>
<td background="../image/hor-spot.gif"><img src="../spacer.gif"></td>
</tr> 
<tr><td> 
<% 
receptrs.MoveNext 
Loop 
%>

------------------
Kom hem till mig...

Genererad på 382 ms · cache AV · v20260730165559-full.f96bc7eb