webForumDet fria alternativet

Är detta rätt??

ASP

6 svar · 271 visningar · startad av sudden

Medlem sedan okt. 2002341 inlägg
Frågan#1

Undrar bara vad som är fel på den här koden!

kod:
<%
'###################################################
'###################################################

'slumpa ut hur dagens väder blev
'variabeln som innehåller slumpkoden heter slump
Randomize
Dim vader(4), slump
vader(0) = "soligt"
vader(1) = "blåsigt"
vader(2) = "regnigt"
vader(3) = "dimmigt"
vader(4) = "molnigt"

slump = vader(INT(RND*(UBound(vader,1)+1)))

'####################################################
'####################################################

'####################################################
'####################################################
'ange ett standardvärde på dagens temperatur som är 20 grader
'denna ändras beroende på hur dagens väder blev
Dim temp
temp = 20

'kolla hur dagens väder blev

If slump = "soligt" Then
temp = 26
Else If slump = "blåsigt" Then
temp = 17
Else If slump = "regnigt" Then
temp = 9
Else If slump = "dimmigt" Then
temp = 15
Else If slump = "molnigt" Then
temp = 16
Else
%>

<html>
<body>
Dagens väder blev <%=slump%><br>
Och temperaturen är <%=temp%>
</body>
</html>
<%End If%>

Medlem sedan juni 200032 967 inlägg
#2

Det underlättar om du berättar vad det är som blir fel, ev. felmeddelande, och om du innesluter din kod i [kod]-taggar, så den blir mer lättläst.

mvh,

Medlem sedan feb. 200112 078 inlägg
#3
<% 
'################################################### 
'################################################### 

'slumpa ut hur dagens väder blev 
'variabeln som innehåller slumpkoden heter slump 
Randomize 
Dim vader(4), slump 
vader(0) = "soligt" 
vader(1) = "blåsigt" 
vader(2) = "regnigt" 
vader(3) = "dimmigt" 
vader(4) = "molnigt" 

slump = vader(INT(RND*(UBound(vader,1)+1))) 

'#################################################### 
'#################################################### 

'#################################################### 
'#################################################### 
'ange ett standardvärde på dagens temperatur som är 20 grader 
'denna ändras beroende på hur dagens väder blev 
Dim temp 
temp = 20 

'kolla hur dagens väder blev 

If slump = "soligt" Then 
temp = 26 
[b]ElseIf[/b] slump = "blåsigt" Then 
temp = 17 
[b]ElseIf[/b] slump = "regnigt" Then 
temp = 9 
[b]ElseIf[/b] slump = "dimmigt" Then 
temp = 15 
[b]ElseIf[/b] slump = "molnigt" Then 
temp = 16 
[b]End if[/b]
%> 

<html> 
<body> 
Dagens väder blev <%=slump%><br> 
Och temperaturen är <%=temp%> 
</body> 
</html>

Inga mellanslag mellan else och if, då blir det fel. Dessutom hade du inte avslutat if-satsen med end if, det måste man göra.

Tillägg) Och en end if för mycket.

Medlem sedan apr. 20022 743 inlägg
#4

på UBound(vader,1) ska det väll inte vara någon 1:a eftersom det bara är en endimentionellarray?

UBound(vader)

OveRRide: han hade med en end if dock på fel ställe... ta bort din <%End If%> som sitter längst ner i koden

Medlem sedan feb. 200112 078 inlägg
#5

Såg det.

Medlem sedan mars 20002 836 inlägg
#6

Detta kan ju ändras:

If slump = "soligt" Then 
temp = 26 
ElseIf slump = "blåsigt" Then 
temp = 17 
ElseIf slump = "regnigt" Then 
temp = 9 
ElseIf slump = "dimmigt" Then 
temp = 15 
ElseIf slump = "molnigt" Then 
temp = 16 
End if

ser ju snyggare ut så här:

Select Case slump
	Case "soligt"
		temp = 26

	Case "blåsigt"
		temp = 17

	Case "regnigt"
		temp = 9

	Case "dimmigt"
		temp = 15

	Case "molnigt"
		temp = 16
End Select

cya,
PatrikB

Medlem sedan mars 20002 836 inlägg
#7

eller varför inte en variant med en 2-dimensionell array:

<% 
'################################################### 
'################################################### 

'slumpa ut hur dagens väder blev 
'variabeln som innehåller slumpkoden heter slump 
Randomize 

Dim vader(1,4), slump, intRndIndex 

vader(0,0) = "soligt" 
vader(1,0) = 26 
vader(0,1) = "blåsigt" 
vader(1,1) = 17 
vader(0,2) = "regnigt" 
vader(1,2) = 9 
vader(0,3) = "dimmigt" 
vader(1,3) = 15 
vader(0,4) = "molnigt"  
vader(1,4) = 16

intRndIndex = CInt(rnd*UBound(vader,2))
Response.Write intRndIndex
slump = vader(0,intRndIndex) 

'#################################################### 
'#################################################### 

'#################################################### 
'#################################################### 
'ange ett standardvärde på dagens temperatur som är 20 grader 
'denna ändras beroende på hur dagens väder blev 
Dim temp 
temp = 20 

slump = vader(0,intRndIndex)
temp = vader(1,intRndIndex)
%> 

<html> 
<body> 
Dagens väder blev <%=slump%><br> 
Och temperaturen är <%=temp%> 
</body> 
</html>
278 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
146 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)