webForumDet fria alternativet

nya funktionsproblem

ASPur ASP

3 svar · 144 visningar · startad av timedia

Medlem sedan maj 2001420 inlägg
Frågan#1

Jag har följande funktion som med webforums hjälp fungerar över all förväntan :)

function memberrec()

SQLlist = "SELECT * FROM MemberRec WHERE MrFilmID = " & request("Id")

Set RS = Connect.Execute(SQLlist)
RS.Cachesize = 1

if not (RS.eof and RS.bof) then
DO UNTIL RS.EOF

  response.write RS("MrMemberBetyg") & "<br>"
  response.write RS("MrMemberRec")  & "<br>"
  response.write "<b>" & RS("MrMemberSignatur") & "</b><br><br>"
  RS.MoveNext
Loop
  
else
  response.write "Inga recensioner skrivna av våra medlemmar"
end if

RS.Close

End Function

Problemet nu består i att jag har en annan funktion också, och jag får inte dom två "att jobba ihop". Hur ska jag få ovanstående funktion att visa tärningen i stället för värdet?

function memberbetyg()

SQLlist = "SELECT * FROM MemberRec WHERE MrFilmID = " & request("Id")

Set RS = Connect.Execute(SQLlist)
RS.Cachesize = 4

if RS("MrMemberBetyg") = 7 THEN
  response.write "<img src='images/tern7.gif'" 
  response.write "'>"
  
  RS.MoveNext
else
if RS("MrMemberBetyg") = 6 THEN
  response.write "<img src='images/tern6.gif'" 
  response.write "'>"
  
  RS.MoveNext
else
if RS("MrMemberBetyg") = 5 THEN
  response.write "<img src='images/tern5.gif'" 
  response.write "'>"
  
  RS.MoveNext
else
if RS("MrMemberBetyg") = 4 THEN
  response.write "<img src='images/tern4.gif'" 
  response.write "'>"
  
  RS.MoveNext
else  
if RS("MrMemberBetyg") = 3 THEN
  response.write "<img src='images/tern3.gif'" 
  response.write "'>"
  
  RS.MoveNext
else  
if RS("MrMemberBetyg") = 2 THEN
  response.write "<img src='images/tern2.gif'" 
  response.write "'>"
  
  RS.MoveNext  
else  
if RS("MrMemberBetyg") = 1 THEN
  response.write "<img src='images/tern1.gif'" 
  response.write "'>"
  
  RS.MoveNext  
else
  response.write "<br><b>Ingen Bild??</b><br>"
end if
end if
end if
end if
end if
end if
end if
RS.Close

End Function
%>

------------------
www.moviemix.nu

[Redigerat av timedia den 22 nov 2001]

Medlem sedan dec. 200012 464 inlägg
#2

Gör om funktionen lite

function memberbetyg(betyg)

if betyg >= 1 and betyg <= 7 then
   bild = "<IMG src='images/tern" & betyg & ".gif'>" 
else
bild =  "<b>Ingen Bild??</b>"
end if
memberbetyg = bild
End Function

och sedan i din utskrift kan du göra så här

DO UNTIL RS.EOF

response.write memberbetyg(RS("MrMemberBetyg")) & "<br>"
response.write RS("MrMemberRec") & "<br>"
response.write "<b>" & RS("MrMemberSignatur") & "</b><br><br>"
RS.MoveNext
Loop

En funktion skall inte innehålla response.write

------------------
essentitia preter non sans multiplicandum

[Redigerat av LarsG den 22 nov 2001]

Medlem sedan maj 2001420 inlägg
#3

Tack. Funkar som en dröm :)

En funktion bör inte inte innehålla response.write

Är det dumt att fråga varför? Jag har isåfall en hel del att rätta till :)

------------------
www.moviemix.nu

Medlem sedan dec. 200012 464 inlägg
#4

Om du vill lägga in utskrifter så kan du använda en sub.

En funktion används för att returnera ett värde som man sedan använder i andra uttryck. Det ger mycket smidigare kod och större möjlighet till återanvändning.

------------------
essentitia preter non sans multiplicandum

133 ms totalt · 3 externa anrop · v20260731065814-full.4bcf49fe
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)