11. september 1999 - 15:19Der er
28 kommentarer og 3 løsninger
drori hansen igén igen
Kan nogen fixe den her koncertkalender. Den bliver ved med at vise en forkert koncert under "next gig". Jeg tror den sorterer efter ugedag og ikke fter dato!
Her er koden, hvis det kan hjælpe. Ellers tilelr jeg gerne en FTP op
if day(now()) < 10 then strdaynow = day(now()) strDagSort = 0+strdaynow else strDagSort = day(now()) end if
strYearNow = year(now())
select case strMrdNr case "1" strMrdNavn = "januar" case "2" strMrdNavn = "februar" case "3" strMrdNavn = "marts" case "4" strMrdNavn = "april" case "5" strMrdNavn = "maj" case "6" strMrdNavn = "juni" case "7" strMrdNavn = "juli" case "8" strMrdNavn = "august" case "9" strMrdNavn = "september" case "10" strMrdNavn = "oktober" case "11" strMrdNavn = "november" case "12" strMrdNavn = "december"
end select
Set objRec = Server.CreateObject ("ADODB.Recordset")
'now open it
objRec.Open "SELECT * FROM koncert WHERE mrd = '"& strMrdNavn & "' AND aar = '"& strYearNow &"' ORDER BY kdato >'" & strDagSort &"'", strconnect, 3
%>
<%if (objRec.eof or objRec.bof) then
strMrdNr = strMrdNr + 1
select case strMrdNr case "1" strMrdNavn = "januar" case "2" strMrdNavn = "februar" case "3" strMrdNavn = "marts" case "4" strMrdNavn = "april" case "5" strMrdNavn = "maj" case "6" strMrdNavn = "juni" case "7" strMrdNavn = "juli" case "8" strMrdNavn = "august" case "9" strMrdNavn = "september" case "10" strMrdNavn = "oktober" case "11" strMrdNavn = "november" case "12" strMrdNavn = "december" end select
objRec.Close 'Set objRec = Nothing objRec.Open "SELECT * FROM koncert WHERE mrd = '"& strMrdNavn & "' AND aar = '"& strYearNow &"' ORDER BY kdato >'" & strDagSort &"'", strconnect, 3
end if
%> <% dim varDato, varMrd, varTid, varSted, varBy, varTelefon, varKdato
Jeg har lige lavet en database i Access for at teste det her. Jeg kommer frem til at følgende SQL giver den ønskede dato:
Min tabel hedder "Tabel1" "id" er kolonnen for primærnøgle (autonum) "sted" er hvor det sker "dato" er hvornår det sker
I databasen har jeg indtastet datoer længere ude i fremtiden, og når jeg kører forespørgslen får jeg den næste koncertdato.
Så er der jo bare tilbage at ændre i kolonne- og tabelnavnet så det passer med Drori's
sql = "SELECT TOP 1 Tabel1.id, Tabel1.dato, Tabel1.sted FROM Tabel1 GROUP BY Tabel1.id, Tabel1.dato, Tabel1.sted HAVING (((Tabel1.dato)>Date())) ORDER BY Tabel1.dato;"
Prøv lige den her igen, det virker perfekt hos mig:
sql = "SELECT TOP 1 Tabel1.id, Tabel1.dato, Tabel1.sted FROM Tabel1 GROUP BY Tabel1.id, Tabel1.dato, Tabel1.sted HAVING (((Tabel1.dato)>Date())) ORDER BY Tabel1.dato;"
Se kommentarer i mit svar længere opppe (13-09-99 14:06:36)
Hey, det er jo slet ikke et datofelt du har i DB'en..er det vel ? prøv lige den her: objRec.Open "SELECT * FROM koncert WHERE mrd = '"& strMrdNavn & "' AND aar = '"& strYearNow &"' AND kdato >'" & strDagSort &"'", strconnect, 3
Den virker nok ikke helt... lige et spørgsmål: Det felt i DB'en, som hedder kdato; er det et tekstfelt eller hvad type er det ?
>skakke: Har selv forsøgt at få nogen til at lave en lignende kalender til www.peterogdeandrekopier.dk - indtil videre uden (Masser af.. ;-)) succes! Har du lavet koncertkalenderen i Access og publiceret den som *.mdb? Og må man låne???
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.