Har två funktioner som borde gå att få till en, problemet är att jag inte fattar hur jag skall göra. Har letat i forumet men hjärnan får inte ihop 1+1 idag.
Function sNamn(dMonth,iCounter)
If dMonth = 1 And iCounter = 1 Then sNamn = "Namnsdag"
Function cNamn(dMonth,iCounter)
If dMonth = 1 And iCounter = 1 Then cNamn = "Citat"
Detta funkar INTE men tanke mässigt skulle det väl se ut så här:
Function sNamn, cNamn(dMonth,iCounter)
If dMonth = 1 And iCounter = 1 Then
sNamn = "Namnsdag"
cNamn = "Citat"
Hoppas någon har tid och lust att hjälpa mig med ovanstående, får gärna förklara också.
Function sNamn(dMonth,iCounter)
If dMonth = 1 And iCounter = 1 Then sNamn = "Nyårsdagen"
If dMonth = 1 And iCounter = 2 Then sNamn = "Svea"
End Function
Function cNamn(dMonth,iCounter)
If dMonth = 1 And iCounter = 1 Then cNamn = "Alla vägar bär till rom."
If dMonth = 1 And iCounter = 2 Then cNamn = "Jag har märkt att mäniskor som kommer sent ofta är bra mycket gladare än de som får vänta på dem"
End Function
Sedan skriver jag ut det på en annan sida med:
Dim dDate, dYear, dMonth, iCounter, sOutput, sOutput2
Dim sOutput3
dDate = Date()
dMonth = Month(dDate)
iCounter = Day(dDate)
If CInt(Month(Date) & Day(Date)) = CInt(dMonth & iCounter) Then
sOutput = sNamn(dMonth,iCounter) & "<br>" & VbCrLf
sOutput2 = sNamn(dMonth,iCounter+1) & VbCrLf
sOutput3 = cNamn(dMonth,iCounter+1) & VbCrLf
End If
Men jag tycker det blir lite onödigt att behöva skriva "samma" information 2 ggr.
Har knåpat lite men är inte riktigt med på hur Guffa menar att jag skall kunna använda sNamn och cNamn.
Fått fram följande:
<%
Sub GetDayInfo(dMonth, iCounter)
If dMonth = 5 And iCounter = 22 Then
sNamn = "Nyårsdagen"
oNamn = "Alla vägar bär till rom"
End if
End Sub
dDate = Date()
dMonth = Month(dDate)
iCounter = Day(dDate)
GetDayInfo dMonth,iCounter
Dim sNamn, oNamn
Response.write sNamn
Response.write "<br>"
Response.write oNamn
%>
Nu funkar det som skall vara samma dag, men möjligheten att också visa morgondagens t ex sNamn funkar inte. Alltså iCounter+1
Nu använder du globala variabler som du sätter värden på i subrutinen. Det är inte så bra eftersom det blir spaghettikod.
Att anropa subrutinen med iCounter+1 fungerar inte alls bra. Ifall det vore den 31:e maj så skulle du anropa subrutinen med datumet den 32:a maj... Skicka in datumet i subrutinen istället. Använd DateAdd för att lägga på en dag, så får du ett korrekt datum.
<%
Sub GetDayInfo(ByVal datDay, ByRef strName, ByRef strSaying)
Dim lngMonth, lngDay
lngMonth = Month(datDay)
lngDay = Day(datDay)
If lngMonth = 5 And lngDay = 22 Then
strName = "Nyårsdagen"
strSaying = "Alla vägar bär till rom"
End If
End Sub
Dim strName, strSaying
GetDayInfo Date(), strName, strSaying
Response.Write strName
Response.Write "<br>"
Response.Write strSaying
GetDayInfo DateAdd("d", 1, Date()), strName, strSaying
Response.Write strName
Response.Write "<br>"
Response.Write strSaying
%>