webForumDet fria alternativet

Skriva ut en gång!

ASP

5 svar · 234 visningar · startad av magnusfernstrom

Medlem sedan mars 20033 686 inlägg
Frågan#1

Hejsan!
Jag har en funktion som säger till när man fått ett nytt meddelande.

Koden för detta ser ut som följande:

<%
Set db = Server.CreateObject("ADODB.Connection")
db.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath ("midgetzinc.mdb")
SQL = "SELECT * FROM meddelanden WHERE Till = " & Session("userID") & ""
Set rs = db.Execute(SQL)

Do until rs.EOF

If rs("Read") = "0" Then
%>
<table border="0" cellpadding="4" cellspacing="0">
<td width="500" height="" valign="center" bgcolor="" align="left" style="border: 1px, dotted;" bordercolor="B31C1C">
<span style="font-size: 8px; font-family: small fonts, verdana;">
<font color="000000">
<a href="meddelanden.asp" class="new">DU HAR OLÄSTA MEDDELANDEN I DIN INKORG!</a>
</span>
</font>
</td>
</table>
<%
End If

rs.MoveNext
Loop
%>

Men om man har två nya meddelanden så för man detta meddelande två gånger.

Hur gör jag för att endast visa det en gång?

Medlem sedan dec. 20025 871 inlägg
#2

Om du inte vill ändra alltför mycket lägger du till Exit Do alldeles ovanför End If:

Exit Do
End If
Medlem sedan mars 20033 686 inlägg
#3

Så enkelt?
För bra för att vara sant :)

Tack för hjälpen!

Medlem sedan juni 200032 967 inlägg
#4

Är det inte smartare att bara strunta i att loopa?

Medlem sedan apr. 20022 743 inlägg
#5

Jag hade gjort så här:

<%
Set db = Server.CreateObject("ADODB.Connection")
db.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath ("midgetzinc.mdb")
SQL = "SELECT * FROM meddelanden WHERE Till = " & Session("userID") & " And Read = '0'"
Set rs = db.Execute(SQL)

If Not rs.EOF Then
%>
<table border="0" cellpadding="4" cellspacing="0">
<td width="500" height="" valign="center" bgcolor="" align="left" style="border: 1px, dotted;" bordercolor="B31C1C">
<span style="font-size: 8px; font-family: small fonts, verdana;">
<font color="000000">
<a href="meddelanden.asp" class="new">DU HAR OLÄSTA MEDDELANDEN I DIN INKORG!</a>
</span>
</font>
</td>
</table>
<%
End If

rs.Close
Set rs = Nothing

db.Close
Set db = Nothing
%>
Medlem sedan mars 20033 686 inlägg
#6

"Är det inte smartare att bara strunta i att loopa?"

Om man kan ASP hyffsat är det lätt att säga så ;)

262 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
130 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
129 ms — ändringar (db)