Avatar billede dhgpower Nybegynder
02. februar 2003 - 10:13 Der er 6 kommentarer og
2 løsninger

Overloop af tid

Hey!

Jeg har et lille problem. Har programmeret et "lille" lokalebooking system, men jeg har et problem med "overloop".

Eks. på bookinger:
15:00 > 17:00      Orange
20:00 > 21:00      Pressemøde

Laves der en søgning fra kl. 16:00 til 17:00 siger den godt nok at det er optaget. Men søges der fra kl. 16:00 til 18:00 siger den OK, men det må den altså ikke.

Bruger flg. kode:
strB = "SELECT * FROM book "
strB = strB & "WHERE lokale = '" & request("lokale") & "' "
strB = strB & "AND startdato = #" & strActCCCCDate & "# "
strB = strB & "AND startclock > " & st_tid & " AND (" & sl_tid & " BETWEEN startclock and slutclock)"
Avatar billede _darkstar_ Nybegynder
02. februar 2003 - 11:00 #1
Er det ikke dig, som har skrevet vedrørende et lignende problem?

Jeg synes at du skulle tage og tegne det på et stkke papir. Det er ret indlysende at den gør som den gør, når du har gjort det.

Lav en tidslinie. Sæt møderne ind på linien. Sæt grænserne (st_tid og sl_tid) in på linien. herefter burde du have det nødvendige overblik til at skrive den rigtige forespørgsel.
Avatar billede dhgpower Nybegynder
02. februar 2003 - 11:02 #2
Tror jeg altså ik, har lige lavet systemet færdig i nat, men det du forslår kan jeg slet ik finde ud af at gøre....
Avatar billede _darkstar_ Nybegynder
02. februar 2003 - 11:13 #3
Se http://zedeler.dk/intervaller.gif

Du sækker kun situationen "der er et andet interval som slutter".
Avatar billede dhgpower Nybegynder
02. februar 2003 - 11:17 #4
Forstår jeg nu ikke meget af... :(
Avatar billede _darkstar_ Nybegynder
02. februar 2003 - 11:56 #5
Det er op til dig om du vil stille et spørgsmål som måske kan gøre at kan se hvad det er ved tegningen, jeg skal forklare, eller om du vil håbe at nogen andre kommer forbi og leverer den færdige kode.
Avatar billede dhgpower Nybegynder
02. februar 2003 - 11:57 #6
Du må gerne forklare tegningen, regner ik med en færdig gode nødvendigvis, men når jeg ik forstår iden bag tengningen er det jo ligesom svært!
Avatar billede dhgpower Nybegynder
02. februar 2003 - 12:22 #7
Tænkte lidt over det og den her virkede for mig:

strB = "SELECT * FROM book "
strB = strB & "WHERE lokale = '" & request("lokale") & "' "
strB = strB & "AND startdato = #" & strActCCCCDate & "# "
strB = strB & "AND ((" & sl_tid & " BETWEEN startclock and slutclock) OR (" & st_tid & " BETWEEN startclock and slutclock)

OR (" & st_tid & " < startclock AND " & sl_tid & " > slutclock) OR (" & st_tid & " > startclock AND " & sl_tid & " < slutclock))"

Du for alligevel lidt point for din indsat ;)
Avatar billede _darkstar_ Nybegynder
02. februar 2003 - 13:15 #8
Okay. Tak.
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester