Hej! Jag har tänkt att jag ska göra en ”veckans lunch meny funktion” men det snurrar bara i huvudet, vore väldigt tacksam om jag kunde få hjälp med lite tankar, idéer, förslag eller exempel på hur jag lättast ska gå tillväga. Ska du visa det veckovis? Är det inte isf lättast att ha ett dagsnummer och ett veckonummer i en databas och sen köra: på www.gourmeservice.com som är gjord i PHP. visas bara den aktuella veckans lunch. Detta för att veckans lunch inte har så lång framförhållning (brukar de flesta inte göra det helgen innan nästa vecka kommer?) Efter mycket fundering har jag gjort på detta enkla vis: <code> Det fungerar kanon, tack så hemskt mycket för alla hjälp! Kanske nåt sånt här? Det där fungerar kanon också, problemet nu är bara att om det ligger menyer flera veckor framåt så kan man se dom också. Jag skulle helst vilja att man endast kan se aktuell vecka samt nästa vecka. Men det kanske blir väldigt krångligt att kolla? NjaeTankar & idéer kring en lunch meny funktion
Tanken är att man skall kunna se lunch menyn för två veckor framåt dvs. om det är v14 så visas v14 & 15 när det sedan blir v15 så visas v15 & 16 osv. För varje vecka skall sedan dagarna (mån-fre) presenteras med datum och själva menyn (texten) för varje dag.
Jag har suttit och funderar och funderar men kommer inte fram till på vilket sätt jag skall göra detta, kanske är det lättast om man bygga en kalender eller är det kanske onödigt?
Help please!Sv: Tankar & idéer kring en lunch meny funktion
<code>
'Plockar fram innevarande veckonummer
nWeek = DatePart ("WW",Date,VBMonday)
'Plockar fram innevarande dags nummer
nDay = WeekDay(Date,VBMonday)
</code>
Och sen välja ut och köra från en databas där veckodagsnummer är mellan nDay och 5 och vecka är nWeek. Och sen ta från nDay = 1 till 5 på nWeek+1 för att få nästa veckas meny.
Bara en idé. Kanske finns något smidigare sätt.
/JohannesSv: Tankar & idéer kring en lunch meny funktion
Och det är ju himla tråkigt om man skall kolla på nästkommande vecka och så är det tomt där?! Men det kan man komma undan med att kontrollera om nästa vecka är ifylld och i så fall då presentera "nästa vecka länken"Sv:Tankar & idéer kring en lunch meny funktion
<%
'Plockar fram aktuellt veckonummer
WeekNr = DatePart("ww", date(), vbFirstFourDays, vbMonday)
Call dbOpen(Connect)
sql = "Select * From t_lunchmenu Where m_Week ='"& WeekNr &"'"
Set objRs = Connect.Execute(sql)
If objRs.EOF Then
Response.Write "<table width=""100%"" border=""0"" cellspacing=""0"" cellpadding=""0"">"& vbCrLf
Response.Write "<tr><td id=""lunch-week""><h1>Vecka "& WeekNr &"</h1></td></tr>"& vbCrLf
Response.Write "<tr><td class=""hr""></td></tr>"& vbCrLf
Response.Write "</table>"& vbCrLf & vbCrLf
Response.Write "<table width=""100%"" border=""0"" cellspacing=""0"" cellpadding=""0"">"& vbCrLf
Response.Write "<tr><td id=""lunch-menu"">"& vbCrLf & vbCrLf
Response.Write "<table border=""0"" cellspacing=""0"" cellpadding=""0"">"& vbCrLf
Response.Write "<tr><td class=""lunch-txt"">"& vbCrLf
Response.Write "Det finns ingen lunch meny inlagd för denna vecka!"& vbCrLf
Response.Write "</td></tr>"& vbCrLf
Response.Write "</table>"& vbCrLf & vbCrLf
Response.Write "</td></tr>"& vbCrLf
Response.Write "</table>"& vbCrLf & vbCrLf
Else
Response.Write "<table width=""100%"" border=""0"" cellspacing=""0"" cellpadding=""0"">"& vbCrLf
Response.Write "<tr><td id=""lunch-week""><h1>Vecka "& objRs("m_Week") &"</h1></td></tr>"& vbCrLf
Response.Write "<tr><td class=""hr""></td></tr>"& vbCrLf
Response.Write "</table>"& vbCrLf & vbCrLf
Response.Write "<table width=""100%"" border=""0"" cellspacing=""0"" cellpadding=""0"">"& vbCrLf
Response.Write "<tr><td id=""lunch-menu"">"& vbCrLf & vbCrLf
Response.Write "<table border=""0"" cellspacing=""0"" cellpadding=""0"">"& vbCrLf
Response.Write "<tr><td class=""lunch-txt"">"& vbCrLf
Response.Write ""& objRs("m_Text") &""& vbCrLf
Response.Write "</td></tr>"& vbCrLf
Response.Write "</table>"& vbCrLf & vbCrLf
Response.Write "</td></tr>"& vbCrLf
Response.Write "<tr><td class=""hr""></td></tr>"& vbCrLf
Response.Write "</table>"& vbCrLf & vbCrLf
End If
objRs.Close : Set objRs = Nothing
Call dbClose(Connect)
%>
och det fungerar ju, men om jag skulle vilja ha en länkt där det tex står (Nästa vecka) som plockar fram nästa veckas meny hur gör jag då på bästa sätt?Sv: Tankar & idéer kring en lunch meny funktion
<%
'Plockar fram aktuellt veckonummer
'Kollar veckonummer i Querystring
WeekNr = Request.QueryString("WeekNr")
if Len(WeekNr) = 0 then
'Veckonummer saknas, kör hårt på att plocka fram innevarande
WeekNr = DatePart("ww", date(), vbFirstFourDays, vbMonday)
end if
Call dbOpen(Connect)
sql = "Select * From t_lunchmenu Where m_Week ='"& WeekNr &"'"
Set objRs = Connect.Execute(sql)
If objRs.EOF Then
Response.Write "<table width=""100%"" border=""0"" cellspacing=""0"" cellpadding=""0"">"& vbCrLf
Response.Write "<tr><td id=""lunch-week""><h1>Vecka "& WeekNr &"</h1></td></tr>"& vbCrLf
Response.Write "<tr><td class=""hr""></td></tr>"& vbCrLf
Response.Write "</table>"& vbCrLf & vbCrLf
Response.Write "<table width=""100%"" border=""0"" cellspacing=""0"" cellpadding=""0"">"& vbCrLf
Response.Write "<tr><td id=""lunch-menu"">"& vbCrLf & vbCrLf
Response.Write "<table border=""0"" cellspacing=""0"" cellpadding=""0"">"& vbCrLf
Response.Write "<tr><td class=""lunch-txt"">"& vbCrLf
Response.Write "Det finns ingen lunch meny inlagd för denna vecka!"& vbCrLf
Response.Write "</td></tr>"& vbCrLf
Response.Write "</table>"& vbCrLf & vbCrLf
Response.Write "</td></tr>"& vbCrLf
Response.Write "</table>"& vbCrLf & vbCrLf
Else
Response.Write "<table width=""100%"" border=""0"" cellspacing=""0"" cellpadding=""0"">"& vbCrLf
Response.Write "<tr><td id=""lunch-week""><h1>Vecka "& objRs("m_Week") &"</h1></td></tr>"& vbCrLf
Response.Write "<tr><td class=""hr""></td></tr>"& vbCrLf
Response.Write "</table>"& vbCrLf & vbCrLf
Response.Write "<table width=""100%"" border=""0"" cellspacing=""0"" cellpadding=""0"">"& vbCrLf
Response.Write "<tr><td id=""lunch-menu"">"& vbCrLf & vbCrLf
Response.Write "<table border=""0"" cellspacing=""0"" cellpadding=""0"">"& vbCrLf
Response.Write "<tr><td class=""lunch-txt"">"& vbCrLf
Response.Write ""& objRs("m_Text") &""& vbCrLf
Response.Write "</td></tr>"& vbCrLf
Response.Write "</table>"& vbCrLf & vbCrLf
Response.Write "</td></tr>"& vbCrLf
' Länk till nästa veckas meny
Response.Write "<tr><td class=""hr""><a href="meny.asp?week=<%=WeekNr+1%>">Näsa veckas meny</td></tr>"& vbCrLf
Response.Write "</table>"& vbCrLf & vbCrLf
End If
objRs.Close : Set objRs = Nothing
Call dbClose(Connect)
%>
</code>
Kanske?Sv:Tankar & idéer kring en lunch meny funktion
Förresten du har inget bra förslag på hur man gör om man bara vill att länken skall synas om det finns en meny för nästa vecka?Sv: Tankar & idéer kring en lunch meny funktion
<code>
<%
'Plockar fram aktuellt veckonummer
'Kollar veckonummer i Querystring
WeekNr = Request.QueryString("WeekNr")
if Len(WeekNr) = 0 then
'Veckonummer saknas, kör hårt på att plocka fram innevarande
WeekNr = DatePart("ww", date(), vbFirstFourDays, vbMonday)
end if
Call dbOpen(Connect)
' Kolla nästa veckas menyer
sql = "Select * From t_lunchmenu Where m_Week ='"& WeekNr+1 &"'"
Set objRs = Connect.Execute(sql)
if objRs.EOF then
'Oops det vart tomt
strNext = False
else
'Yepp, nästa vecka finns det meny för också
strNext = True
end if
sql = "Select * From t_lunchmenu Where m_Week ='"& WeekNr &"'"
Set objRs = Connect.Execute(sql)
If objRs.EOF Then
Response.Write "<table width=""100%"" border=""0"" cellspacing=""0"" cellpadding=""0"">"& vbCrLf
Response.Write "<tr><td id=""lunch-week""><h1>Vecka "& WeekNr &"</h1></td></tr>"& vbCrLf
Response.Write "<tr><td class=""hr""></td></tr>"& vbCrLf
Response.Write "</table>"& vbCrLf & vbCrLf
Response.Write "<table width=""100%"" border=""0"" cellspacing=""0"" cellpadding=""0"">"& vbCrLf
Response.Write "<tr><td id=""lunch-menu"">"& vbCrLf & vbCrLf
Response.Write "<table border=""0"" cellspacing=""0"" cellpadding=""0"">"& vbCrLf
Response.Write "<tr><td class=""lunch-txt"">"& vbCrLf
Response.Write "Det finns ingen lunch meny inlagd för denna vecka!"& vbCrLf
Response.Write "</td></tr>"& vbCrLf
Response.Write "</table>"& vbCrLf & vbCrLf
Response.Write "</td></tr>"& vbCrLf
Response.Write "</table>"& vbCrLf & vbCrLf
Else
Response.Write "<table width=""100%"" border=""0"" cellspacing=""0"" cellpadding=""0"">"& vbCrLf
Response.Write "<tr><td id=""lunch-week""><h1>Vecka "& objRs("m_Week") &"</h1></td></tr>"& vbCrLf
Response.Write "<tr><td class=""hr""></td></tr>"& vbCrLf
Response.Write "</table>"& vbCrLf & vbCrLf
Response.Write "<table width=""100%"" border=""0"" cellspacing=""0"" cellpadding=""0"">"& vbCrLf
Response.Write "<tr><td id=""lunch-menu"">"& vbCrLf & vbCrLf
Response.Write "<table border=""0"" cellspacing=""0"" cellpadding=""0"">"& vbCrLf
Response.Write "<tr><td class=""lunch-txt"">"& vbCrLf
Response.Write ""& objRs("m_Text") &""& vbCrLf
Response.Write "</td></tr>"& vbCrLf
Response.Write "</table>"& vbCrLf & vbCrLf
Response.Write "</td></tr>"& vbCrLf
' Länk till nästa veckas meny om det finns någon
if strNext = True then
Response.Write "<tr><td class=""hr""><a href="meny.asp?week=<%=WeekNr+1%>">Näsa veckas meny</td></tr>"& vbCrLf
else
Response.Write "<tr><td class=""hr""></td></tr>"& vbCrLf
end if
Response.Write "</table>"& vbCrLf & vbCrLf
End If
objRs.Close : Set objRs = Nothing
Call dbClose(Connect)
%>
</code>Sv:Tankar & idéer kring en lunch meny funktion
Sv: Tankar & idéer kring en lunch meny funktion
<code>
<%
'Plockar fram aktuellt veckonummer
'Kollar veckonummer i Querystring
WeekNr = Request.QueryString("WeekNr")
if Len(WeekNr) = 0 then
'Veckonummer saknas, kör hårt på att plocka fram innevarande
WeekNr = DatePart("ww", date(), vbFirstFourDays, vbMonday)
else
if WeekNr > DatePart("ww",date(),vbFirstFourDays, vbMonday) + 1 then
maxweek = True
else
maxweek = False
end if
end if
Call dbOpen(Connect)
' Kolla nästa veckas menyer
sql = "Select * From t_lunchmenu Where m_Week ='"& WeekNr+1 &"'"
Set objRs = Connect.Execute(sql)
if objRs.EOF then
'Oops det vart tomt
strNext = False
else
'Yepp, nästa vecka finns det meny för också
strNext = True
end if
sql = "Select * From t_lunchmenu Where m_Week ='"& WeekNr &"'"
Set objRs = Connect.Execute(sql)
If objRs.EOF Then
Response.Write "<table width=""100%"" border=""0"" cellspacing=""0"" cellpadding=""0"">"& vbCrLf
Response.Write "<tr><td id=""lunch-week""><h1>Vecka "& WeekNr &"</h1></td></tr>"& vbCrLf
Response.Write "<tr><td class=""hr""></td></tr>"& vbCrLf
Response.Write "</table>"& vbCrLf & vbCrLf
Response.Write "<table width=""100%"" border=""0"" cellspacing=""0"" cellpadding=""0"">"& vbCrLf
Response.Write "<tr><td id=""lunch-menu"">"& vbCrLf & vbCrLf
Response.Write "<table border=""0"" cellspacing=""0"" cellpadding=""0"">"& vbCrLf
Response.Write "<tr><td class=""lunch-txt"">"& vbCrLf
Response.Write "Det finns ingen lunch meny inlagd för denna vecka!"& vbCrLf
Response.Write "</td></tr>"& vbCrLf
Response.Write "</table>"& vbCrLf & vbCrLf
Response.Write "</td></tr>"& vbCrLf
Response.Write "</table>"& vbCrLf & vbCrLf
Else
Response.Write "<table width=""100%"" border=""0"" cellspacing=""0"" cellpadding=""0"">"& vbCrLf
Response.Write "<tr><td id=""lunch-week""><h1>Vecka "& objRs("m_Week") &"</h1></td></tr>"& vbCrLf
Response.Write "<tr><td class=""hr""></td></tr>"& vbCrLf
Response.Write "</table>"& vbCrLf & vbCrLf
Response.Write "<table width=""100%"" border=""0"" cellspacing=""0"" cellpadding=""0"">"& vbCrLf
Response.Write "<tr><td id=""lunch-menu"">"& vbCrLf & vbCrLf
Response.Write "<table border=""0"" cellspacing=""0"" cellpadding=""0"">"& vbCrLf
Response.Write "<tr><td class=""lunch-txt"">"& vbCrLf
Response.Write ""& objRs("m_Text") &""& vbCrLf
Response.Write "</td></tr>"& vbCrLf
Response.Write "</table>"& vbCrLf & vbCrLf
Response.Write "</td></tr>"& vbCrLf
' Länk till nästa veckas meny om det finns någon
if strNext = True and maxweek = False then
Response.Write "<tr><td class=""hr""><a href="meny.asp?week=<%=WeekNr+1%>">Näsa veckas meny</td></tr>"& vbCrLf
else
Response.Write "<tr><td class=""hr""></td></tr>"& vbCrLf
end if
Response.Write "</table>"& vbCrLf & vbCrLf
End If
objRs.Close : Set objRs = Nothing
Call dbClose(Connect)
%>
</code>
Det där borde göra så att om veckan som visas är Innevarande vecka +1 så visas ingen "nästa veckas" länk även om det finns en.