login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Boekingen dmv agenda

Offline lau - 21/08/2008 16:47
Avatar van lauHTML interesse Ik ben bezig met een boekingsysteem dat loopt van 18 november tot en met 20 december elk jaar. Een dag is ingedeeld van 10:00 's ochtends tot en met 10:00 's avonds. Een klant kan boeken per 30 minuten.
Maar ik kom er even niet uit hoe ik mijn database moet inrichten?

Het is dus 10:00 - 22:00 = 12 uurtjes = 24 per 30 minuten.
Zelf had ik het idee om een reeks van 24 kolommen te maken en dat per 1, 2 of 0 aan te geven als het geboekt is. 0 als het vrij is, en 1 als het in behandeling is voor goedkeuring en 2 als het geboekt is zodat andere klanten niet op dat tijdschaal kunnen boeken.
Maar is dit wel handig of heeft iemand een betere suggestie?

8 antwoorden

Gesponsorde links
Offline jvs - 21/08/2008 18:37
Avatar van jvs HTML beginner Maak gewoon een tabel boekingen zet daar de naam, uur, datum in. Als iemand een boeking wil maken kan je nog altijd controleren of ze bezet is door
  1. $query = "SELECT * FROM boekingen WHERE UUR = ... AND DATE = ...";
Offline Douwedecoder - 21/08/2008 20:27 (laatste wijziging 21/08/2008 20:30)
Avatar van Douwedecoder Nieuw lid Ik zou er denk ik voor kiezen om de de de gewenste tijd van de boeking in 2 DATETIME kolommen op te slaan. Een colom "time_start" en een colom "time_end" bijvoorbeeld. Met daarbij dan een kolom voor voor status van de boeking. M'n tabel zou er dan ongeveer zo uitzien:

customer_id (INT)
time_start (DATETIME)
time_end (DATETIME)
status (INT) (in behandeling, geboekt etc)

Controles of tijdblokken nog vrij zijn/en of binnen de range vallen zou ik in SQL en php oplossen, dat lijkt me veel flexibeler (stel bijvoorbeeld dat er blokken uitvallen of nieuwe bijkomen)

Greetz,


Douwe

Offline jc2 - 21/08/2008 22:14 (laatste wijziging 21/08/2008 22:17)
Avatar van jc2 PHP interesse Grappig dat wij met ongeveer hetzelfde bezig zijn 

Ik heb het zo gedaan:
A. 2 databases: 'setup' en 'boekingen'
B. 1 pagina met een kalender en een tijdentabel (via setup wordt gecontroleerd welke dagen en tijden beschikbaar mogen zijn, via boekingen welke inmiddels bezet zijn)
C. 1 pagina met een boekingsoverzicht
D. 1 pagina met een boekingsformulier

Ik sla naam, datum, begintijd,eindtijd en status in 'boekingen' op en bereken bij B de tijden die er tussen zitten
In 'setup' sla ik onder de noemer id - naam - value - datumtijd gegevens op.
Bijv.:
Citaat:
1 - tijd_vrij - 18:00|20:00 - 20-08-2008 14:12:33
2 - dag_bezet - 21-08-2008|24-08-2008|30-10-2009 - 20-08-2008 14:12:33
// enz.

Deze lees ik uit d.m.v. een selectquery waar de naam al van is ingevuld en ik explode de 'value' eerst en zet het daarna via een for-loop in een array.

Ik kan je helaas geen voorbeeld of code geven, aangezien het in een ledengedeelte ingebouwd zit, maar ik hoop dat je hier wat aan hebt gehad. Overigens is het voor mij echt veel puzzelwerk geweest voordat ik het had zoals nu. Bijna 4 volle dagen aan bezig geweest!
Offline lau - 29/08/2008 01:53
Avatar van lau HTML interesse Mag ik vragen hoe jij lege dagen/tijden controleert?
Het is me nog niet duidelijk wat setup en boekingen van elkaar verschillen? Doet setup enkel rekenwerk van boekingen die zijn gemaakt?
Offline jc2 - 29/08/2008 11:48 (laatste wijziging 29/08/2008 12:00)
Avatar van jc2 PHP interesse Ik ben zelf helaas gestopt met de boekingsagenda en heb de database verwijderd, maar ik kan je wel de bestanden geven.
Je kunt ze hier downloaden.

Je moet dus wel zelf de database erbij reconstrueren en de 'valse code' (code die met o.a. inloggen) te maken heeft eruit halen.

Update:
Ik heb nog een paar pagina's toe weten te voegen en ik heb een online voorbeeld wat door gebrek aan de database niet werkt.
Offline lau - 29/08/2008 18:37
Avatar van lau HTML interesse Wow... das wel handig jah, hartelijk dank als inspiratie.
Maar waarom ben je gestopt, ik dacht dat je het af had (qua boekingssysteem dan).

Wat jij hebt is inderdaad erg uitgebreid. Ik zal je code eens bekijken hoe je het een en ander hebt toegepast, met name qua rekenwerk van vrije dagen/tijden. De rest is me echter te uitgebreid haha  
Offline jc2 - 30/08/2008 16:34
Avatar van jc2 PHP interesse Ik had het net werkend na een dag of 3, maar toen bedacht ik me dat degene voor wie ik het maakte er waarschijnlijk geen gebruik van zou maken.
Maar goed, het zijn eigenlijk 3 verschillende scripts (2 bestaande, 1 zelfgemaakte) bij elkaar gevoegd en dat met databasegegevens aan elkaar geknoopt.
Offline Fjan - 10/10/2008 18:03
Avatar van Fjan Nieuw lid Ik zou het ook doen zoals Douwe. Ik heb het namelijk ook zo gedaan toen ik dit systeem maakte : Supersaas.nl. Je moet trouwens eens overwegen of je die niet gewoon wilt gebruiken op je site, scheelt een hoop werk. Voor kleine gebruikers gratis (ik weet niet hoeveel boekingen je gaat hebben)
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.36s