Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Loop problem!

Postades av 2001-02-21 09:11:00 - Maria Levén, i forum asp - allmänt, Tråden har 3 Kommentarer och lästs av 740 personer

hej!
Litet bekymmer ang en loop.
Ska i första loopen hämta ut värden baserat på omr fältet.
I nästa loop ska jag hämta ut uppgifterna på varje omr.
Men, den skriver ut omr två gånger, vilket den inte ska göra.
Någon som ser vad jag har gjort för fel?

<%
set kontakter = server.createObject("ADODB.recordset")
kontakter.open "SELECT * FROM kontakter WHERE agare='seals'", conn, 1
do while not kontakter.eof%>
<tr>
<td class="bText" valign="top">
<b><%= kontakter("omr")%></b><br>
<%
set kontakt = server.createObject("ADODB.recordset")
kontakt.open "SELECT * FROM kontakter WHERE omr='"&kontakter("omr")&"'",conn,1
Do until kontakt.EOF
%>
<%= kontakt("bolag") %><br>
<%= kontakt("namn") %><br>
"><%= kontakt("epost") %><br>
<%= kontakt("telefon") %>
<p>
<%
kontakt.MoveNext
loop
%>
</td>
</tr>
<tr>
<td><img src="/images/spacer.gif" border="0" width="1" height="10"></td>
</tr>
<%
kontakter.moveNext
loop
kontakter.close

MvH
maria


Svara

Sv: Loop problem!

Postades av 2001-02-21 20:48:00 - Andreas Hillqvist

Kanske något sånt här?

<%
Dim rsOmr
Dim fldOmr

Dim rsInfo
Dim fldBolag
Dim fldNamn
Dim fldEPost
Dim fldTelefon
set rsOmr = server.createObject("ADODB.recordset")
set rsInfo = server.createObject("ADODB.recordset")

rsOmr.open "SELECT * FROM kontakter WHERE agare='seals'", conn, 1
Set fldOmr = rsOmr("omr")

Do Until rsOmr.eof%>
<tr>
<td class="bText" valign="top">
<%= fldOmr %><br>
<%
rsInfo.open "SELECT * FROM kontakter WHERE omr='" & fldOmr & "'",conn,1

Set fldBolag = rsInfo("bolag")
Set fldNamn = rsInfo("namn")
Set fldEPost = rsInfo("epost")
Set fldTelefon = rsInfo("telefon")

Do until rsInfo.EOF
%>
<%= fldBolag %><br>
<%= fldNamn %><br>
<%= fldEPost %><br>
<%= fldTelefon %>
<p>
<%
rsInfo.MoveNext
loop
rsInfo.Close
%>
</td>
</tr>
<tr>
<td><img src="/images/spacer.gif" border="0" width="1" height="10"></td>
</tr>
<%
rsOmr.moveNext
loop
rsOmr.close


Svara

Sv: Loop problem!

Postades av 2001-02-22 01:29:00 - Pelle Johansson

Jag skulle undvika att öppna 2 recordset för ett onödigt anrop mot databasen och istället göra ungefär såhär (exemplet sakna massa html-kod)..

Nedan kontrollerar du när den loopat igenom hela gruppen x, och det kommer en ny grupp - skrivs detta ut och därefter fortsätter den. På så sätt kan du hantera det på ett snyggt sätt. Du kanske behöver ett speciellt kriteria om det är en viss ägare och då kan du göra det i just den kodraden...

<code>
Set con = Server.Createobject("adodb.connection")
con.Open "mindsn","uid","pwd"

searchText = "seals"
sql = "select * from kontakter where agare = '" & searchText & "' order by agare, omr"
Set rst=Con.Execute(sql)

Do While Not rst.Eof
If rst("agare") <> oldagare Then
oldagare = rst("agare")

' ny grupp, ny rubrik
Response.Write "<b>" & rst("agare") & "</b><br>"
End If

' printa posten
Response.Write "<td>"
Response.Write rst("bolag") & " - "
Response.Write rst("agare")
Response.Write "</td>"

rst.MoveNext
If Not rst.Eof then oldagare = rst("agare")

Loop

Rst.Close
Set Con = Nothing

</code>

<b>Obs!</b>
Bör även påpeka att Andreas tips ovan med Set x = ... är bra, för då har du redan deklarerat upp fältnamnen och när du går in i loopen så tjänar du tid på att slippa slå upp och hämta datat i specificerat fält. Vet man vad man håller på med, så är det ännu snabbare att skriva set x= rst(2), istället för namnet.

/Pelle


Svara

Sv: Loop problem!

Postades av 2001-02-22 12:13:00 - Patrik Löwendahl

ännu ett litet tips om fält när vi snackar prestand ..

fld.value är ett litet snäpp snabbare.. blir ingen onödig overhead när iis'n skall slå upp vilket som är default egenskapen fr objektet ..

Dessutom skall man undvika * av två anledingar:

1) Möjligheten finns att man får med data man inte är intresserad av

2) Databasen måste slå upp vilka fält som finns med, görs inte automatiskt utan som en query innan den utför den man sjäv angett..



Svara

Nyligen

  • 19:42 Online Casinos for Haitian Players
  • 19:38 Rekommendera något intressant
  • 19:13 Международная перевозка грузов
  • 00:01 DL Van Tuning | Exclusive Body Kit
  • 12:08 Indian casino
  • 04:14 Vad finns det för kratomalternativ
  • 14:16 Indian online casino
  • 14:15 Indian online casino

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 878
27 965
271 771
586
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies