Bezetting hotelkamers opslaan

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Senior .Net developer

Sogeti is een organisatie met een goede werksfeer en zo min mogelijk hiërarchische verhoudingen. Ga je bij ons als .Net Developer aan de slag? Dan werk je dagelijks met collega’s aan de mooiste IT-projecten. Deze snelgroeiende groep collega’s krijgt energie van hun vak en dat merk je op de werkvloer. Natuurlijk krijg jij de mogelijkheid je te certificeren. We organiseren regelmatig technische Meet-ups en doen we veel aan kennisdeling. Mede hierdoor zij wij dit jaar Microsoft Partner of the year geworden. Sogetisten staan klaar voor elkaar, hebben lol met elkaar en daarmee behalen we de mooiste resultaten! Werken bij Sogeti

Bekijk vacature »

PHP Developer

Functieomschrijving Vanuit het hoofdkantoor in omgeving Roosendaal, ontwikkel je als PHP Developer niet alleen webapplicaties, maar ben je verder ook gefocust op het continu inspelen op nieuwe trends en ontwikkelingen m.b.t software development. Naast het bouwen van webapplicaties, ontwikkelen zij ook webshops en websites voor gave opdrachtgevers! Wat ga je doen? Het schrijven van schone en efficiënte codes volgens het Symfony framework; Het ontwerpen en implementeren van webapplicaties met het Symfony-framework; Onderhouden en updaten van bestaande applicaties die zijn gebouwd met het Symfony framework; Het testen van ontwikkelde applicaties om te zorgen dat ze goed functioneren en voldoen aan de

Bekijk vacature »

SQL database developer

Functieomschrijving Heb jij ongeveer 3 jaar ervaring als SQL database developer? Dit bedrijf bouwt applicaties om processen in distributiecentra te optimaliseren. Ter uitbreiding van het development team zijn wij op zoek naar een SQL database ontwikkelaar. Wil jij werken voor een groeiende werkgever in regio Breda waar jij de ruimte en tijd krijgt jezelf te ontwikkelen? Lees dan snel verder! Hoe ziet jouw takenpakket eruit? Je houdt je bezig met het creëren en bouwen van MS SQL server databases; Je werkt aan innovatieve softwareoplossingen voor het verbeteren en/of vernieuwen van logistieke processen; Je gaat projecten vanaf het begin tot het

Bekijk vacature »

Junior Fullstack Developer

Functie omschrijving Heb jij je universitair diploma Informatica afgerond en ben jij op zoek naar een startersfunctie waar jouw ontwikkeling in een hoog vaandel staat? Voor een softwarebedrijf in Amsterdam zijn wij op zoek naar een Junior Fullstack Developer. Je begint met een op maat gemaakte training om de kennis bij te spijkeren die jij nog mist. Uiteraard leer je het meeste tijdens je werk, maar de training geeft je hiervoor alvast de juiste handvatten. Je kunt het volgende verwachten! Jij ontwikkelt in technieken als Java, Javascript en SQL. Je werkt hierbij volgens de Agile/Scrum methode; Na het afronden van

Bekijk vacature »

Software Developer

Functie omschrijving Psst hé jij daar! Op zoek naar een nieuwe uitdaging als developer? Wacht niet langer en reageer direct. In deze functie ga je bij een familiebedrijf werken als developer. Je gaat maatwerk software ontwikkelen met de Microsoft stack. Je gebruikt technieken als C#, ASP.NET en MVC. Je werkt in een leuk team van andere developers. Je krijgt veel vrijheid in je werk en kan flexibel werken. Dagje thuiswerken? Geen probleem! Daarnaast is er veel ruimte om écht mee te denken met het bedrijf en met de klanten. Bedrijfsprofiel Deze organisatie is gevestigd in de regio van Boxtel. Vanaf

Bekijk vacature »

Backend Developer Scrummaster .NET

Samengevat: Deze werkgever is een ambitieus internetbedrijf met een passie voor digitale communicatie. Ben jij geschikt als Backend Developer? Heb je ervaring met .NET platform? Vaste baan: Backend Developer / SCRUM Master Scrum HBO WO €3.800 - €6.000 Deze werkgever is een innovatief bedrijf met enthousiaste mensen die jarenlang ervaring hebben met het ontwikkelen internet- en intranetoplossingen. Wij houden van korte lijnen en open en eerlijke communicatie. Wij zetten graag onze jarenlange ervaring in om perfect werkende oplossingen te ontwikkelen. Wij ondersteunen dienstverlenende organisaties bij het ontwikkelen en realiseren van een effectief, adaptief communicatieplatform. Je ontwikkelt met ons de meest

Bekijk vacature »

Als Lead PHP developer bijdragen aan het onderwijs

Functie Als Lead PHP developer zet je samen met het team en de andere lead developers de technische lijnen uit als het gaat om het ontwikkelen van de applicaties en bepaal je samen met de PO waar elke sprint aan gewerkt zal worden. Je kunt op basis van een user story een goede aanpak formuleren en een planning opstellen, en andere hierin meenemen. Wanneer je team code schrijft verwacht je degelijke oplossingen, bij voorkeur gebruik makend van Domain Driven Design. Je ziet toegevoegde waarde in het beoordelen van het werk van collega’s om zo samen te streven naar hoge kwaliteit

Bekijk vacature »

Front end developer Zorgplatform

Functie Jij als Front end ontwikkelen zult komen te werken samen met 1 PHP ontwikkelaar, 1 Python developer en een flexibele schil aan ontwikkelaars . Samen ga je ervoor zorgen dat de huidige producten doorontwikkeld worden. De Marketplace is geschreven in PHP Laravel en in de front end React. De roostersoftware is ontwikkeld in Python in combinatie met React in de front end. Jij zult als Front ender dus voornamelijk bezig zijn met het verbeteren van onze interfaces op onze verschillende producten. Momenteel ligt de uitdaging in het feit dat de roostersoftware breder schaalbaar moet worden zodat het voor meerdere

Bekijk vacature »

Machine Software Developer

Bij een bedrijf in de machinebouw, regio Roosendaal, zijn we op zoek naar een: Machine Software Developer Waar ga je werken? Onze opdrachtgever is gespecialiseerd in de grondverzetmachines. Al meer dan 50 jaar leveren ze zowel nationaal als internationaal diverse machines. Het is een familiebedrijf met een informele werksfeer. Wat ga je doen? Als Machine Software Developer ben je verantwoordelijk voor: - Je ontwerpt, ontwikkelt en debugt software voor machinebesturingssystemen en complexe landbouwmachines; - Je stelt gebruikersinterfaces op (cabinedisplays); - Op termijn ga je softwareprojecten leiden voor specifieke machines; - Inclusief planning, documentatie en validatie; - Om specificaties te verifiëren

Bekijk vacature »

Traineeship ICT regio Amsterdam/Utrecht

Wat ga je doen? Het traineeship begint met een fulltime maand cursussen en praktijkdagen, waarin je de basis van het IT-vak leert op de Shared Servicedesk (SSD). Daarnaast ga je meteen aan de slag voor je eerste certificering! (ITILv4). Je start in een groep met 4 tot 10 deelnemers, waarmee jij gedurende die maand optrekt en je kennis kunt delen. Na het voltooien van de eerste maand ga je direct voor een langere periode aan de slag bij één van onze klanten of blijf je intern bij ons op de Shared Servicedesk. Je bent het eerste aanspreekpunt van de eindgebruikers

Bekijk vacature »

Mendix Consultant / Developer

Dit ga je doen Het in kaart brengen en analyseren van de functionele wensen van de klant rondom Mendix applicaties; Het fungeren als sparringpartner voor de (interne) klanten; Het opstellen van requirements en het vertalen hiervan naar technische mogelijkheden; Het opstellen van user stories; Het bouwen van de Mendix applicaties in samenwerking met jouw team of zelfstandig; Het testen van op te leveren software en het zorg dragen voor de implementatie; Trainen van gebruikers in het gebruik van de applicatie; Werken in een Agile omgeving. Hier ga je werken De organisatie begeeft zich in de retail branche en focust zich

Bekijk vacature »

Medior/Senior Front-end Developers gezocht (Utrech

Functie Het team bestaat uit 10+ gespecialiseerde (veel senior) front-end ontwikkelaars en ontwerpers die werken aan projecten voor klanten van verschillende groottes (kan twee jaar bezig zijn met 1 klant). Je helpt klanten met ingewikkelde front-end vraagstukken, hierbij kun je denken aan: UX/UI design, CI/CD, architectuur en integratie met back-end systemen. De werkzaamheden verricht je op locatie bij de klant, dit is vaak in de Randstad. De organisatiestructuur is plat en er heerst een informele sfeer, zo kun je met vragen dus terecht bij de directie. Er wordt veel nadruk gelegd op het bevorderen van persoonlijke ontwikkeling door middel van

Bekijk vacature »

Fullstack Developer

Functieomschrijving Heb je kort geleden jouw HBO diploma ICT development behaald? Of zit je nog aan het begin van je carrière en heb je affiniteit met C#.NET? Voor een erkende werkgever in de omgeving van Oosterhout zijn wij op zoek naar een fullstack developer. Als C#.NET developer werk je samen met een vooruitstrevend team aan het ontwikkelen van maatwerk software voor klanten. Je hebt affiniteit met SQL, maar nog belangrijker is dat je kennis en ervaring hebt met C#.NET. Jouw werkzaamheden zien er als volgt uit: Het ontwikkelen van onze high-availability en high-performance backend; Je begint de dag rond 8:30

Bekijk vacature »

Senior .NET Ontwikkelaar

In het kort Als Senior .NET ontwikkelaar ga je binnen onze business unit Transport en Logistiek aan de slag met complexe maatwerk software voor bedrijf kritische systemen binnen de technische automatisering. Denk bijvoorbeeld een IoT-oplossing voor de logistieke sector waarbij we van ruim 200.000 machines de telemetrie en events verwerken. We zijn actief in de distributielogistiek, havenlogistiek (denk aan ECT) en productielogistiek. Naast C# en .NET Core maken we ook gebruik van Azure technologie. En als trotse Microsoft Gold Partner leren we graag van en met jou. Wil jij jezelf blijven ontwikkelen binnen de technische automatisering met .NET, dan gaan

Bekijk vacature »

Front-End Developer

As a Front-End Developer at Coolblue you improve the user-friendliness of our webshop for millions of customers. How do I become a Front-End Developer at Coolblue? As a Front-End Developer you work on the user-friendliness of our webshop for millions of customers. You enjoy working with the UX Designer to pick up stories. You get energy from coming up with creative solutions and are happy to present these within the team. You also take pride in your work and welcome any feedback. Would you like to become a Front-End Developer at Coolblue? Read below if the job suits you. You

Bekijk vacature »

Pagina: 1 2 volgende »

Brian Valenburg

Brian Valenburg

31/05/2010 10:19:17
Quote Anchor link
Hallo,

Ik ben hier al een hele tijd niet geweest en moet zeggen dat ik onder de indruk ben van de nieuwe website.

Ik ben bezig met een script waarmee je hotelkamers kunt reserveren. Nu vraag ik me af wat de beste manier is om de bezetting data op te slaan.

Is dit een koppel tabel, dus een tabel die communiceert met de tabel waarin de hotelkamers staan, of gewoon in één tabel, data ranges met komma gescheiden. Denk het eerste, maar misschien zie ik nog iets over het hoofd.

Alvast bedankt :) - Brian
 
PHP hulp

PHP hulp

15/05/2024 05:57:44
 
Joren de Wit

Joren de Wit

31/05/2010 10:23:03
Quote Anchor link
De tweede oplossing is in ieder geval niet juist, dat had je goed gezien. Of de eerste wel de juiste is, hangt af van alle informatie die je in je database op wilt slaan. De enige manier om achter het juiste datamodel te komen, is door te normaliseren. Doorloop dat proces en je houd vanzelf een correct datamodel over ;-)

Edit: op basis van de informatie die je nu geeft, zou ik zoiets verwachten:

kamers
------
id
kamernummer
naam

reserveringen
-----------
id
kamer_id
aankomst_datum
vertrek_datum
Gewijzigd op 31/05/2010 10:24:49 door Joren de Wit
 
Brian Valenburg

Brian Valenburg

31/05/2010 10:24:15
Quote Anchor link
Ik denk dat ik de begin datum en eind datum in een rij opsla in een tabel hoteldata o.i.d. zodat ik makkelijk kan sorteren / zoeken. Ik ga die tutorial even lezen, dank!

- Brian
 
Joren de Wit

Joren de Wit

31/05/2010 10:25:52
Quote Anchor link
Zie ook de edit van mijn vorige post. Een keine opzet, die wellicht nog verandert omdat je meer informatie wilt opslaan. Bijvoorbeeld over de persoon die een kamer reserveert.
 
Brian Valenburg

Brian Valenburg

31/05/2010 10:27:27
Quote Anchor link
Zoiets had ik ook in gedachten maar dacht een tweede opinie kan nooit geen kwaad. :) Dank je wel. De pagina's van de tutorial normaliseren zijn trouwens niet juist gesorteerd.
 
Joren de Wit

Joren de Wit

31/05/2010 10:29:10
Quote Anchor link
Ik zie het. Er is waarschijnlijk wat fout gegaan met het overzetten van de data van de oude website. Gelukkig spreken de titels voor zich :-)

edit: zojuist de volgorde aangepast...
Gewijzigd op 31/05/2010 10:43:44 door Joren de Wit
 
Elwin - Fratsloos

Elwin - Fratsloos

31/05/2010 11:04:26
Quote Anchor link
Het gaat hierbij niet om een koppeltabel. Maar om twee gewone tabellen die een een-op-veel relatie met elkaar hebben (een hotelkamer kan meerdere reserveringen hebben).

Een koppeltabel wordt gebruikt om een veel-op-veel relatie te maken. Bijvoorbeeld:
gebruiker <> gebruiker_groep <> groep

Meerdere gebruikers kunnen in meerdere groepen zitten.

Offtopic:
De tutorial heeft nu in de rechterbalk geen titels om door de pagina's te navigeren.
 
Brian Valenburg

Brian Valenburg

31/05/2010 11:14:25
Quote Anchor link
Bedankt voor je aanvullingen Elwin. Zie dat jij de tutorial ook hebt geschreven, puik werk :) Ik ben weer een spat slimmer.

Offtopic:
Zie dat de inhoudsopgave nu weer terug is. Vorige / volgende pagina werkte net niet maar nu wel, volgens mij is er iemand bezig...
 
Brian Valenburg

Brian Valenburg

31/05/2010 11:42:52
Quote Anchor link
Ik heb nu het volgende op papier staan:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
hotelrooms
id    int(11)
room_number    int(5)
room_number_additive    varchar(5)
room_name    varchar(20)
photo1    varchar(40)
photo2    varchar(40)
photo3    varchar(40)

room_occupation
room_id    int(11)
date_from    datetime
date_till    datetime
date_reservation    Datetime
customer_id    varchar(40)

customers
id    int(11)
name    varchar(20)
surname    varchar(50)
address    varchar(40)
postalcode    varchar(6)
city    varchar(30)
telephone    varchar(13)
email    varchar(150)
notes    text


Voordat ik ga programmeren wil ik zeker weten dat ik niets over het hoofd zie. Vergeet ik nog iets?
 
B a s
Beheerder

B a s

31/05/2010 11:45:11
Quote Anchor link
Je hebt nu je foto's in je hotelrooms tabel. Daar kun je beter een apparte tabel van maken waarin je net zoals bij room_occupation naar het room_id verwijst.

Offtopic:
Welkom terug Brian :) Laatste keer dat je hier was, was in 2007 zie ik.
Gewijzigd op 31/05/2010 11:52:38 door B a s
 
Brian Valenburg

Brian Valenburg

31/05/2010 11:46:28
Quote Anchor link
Goed idee.. Heb ik nu aangepast :) Nu zit je ook niet aan slechts 3 foto's vast ;) Dank je wel
 
Brian Valenburg

Brian Valenburg

31/05/2010 11:57:38
Quote Anchor link
Ik heb nog één vraag. Ik wil een cumulatief systeem maken voor meerdere hotels. Is het verstandig om dit in één grote database te doen of vertraagd dit de boel?

Ik zit te denken om een `owner_id` toe te voegen aan de bestaande tabellen die aangeeft van welk hotel die record is.
 
Joren de Wit

Joren de Wit

31/05/2010 12:02:01
Quote Anchor link
Je kunt prima nog een tabel met hotels toevoegen. De enige tabel die je vervolgens hoeft te wijzigen, is de hotelrooms tabel. Deze krijgt dan immers een kolom hotel_id erbij om aan te geven in welk hotel de kamer zich bevindt.

Over traagheid: een database is ervoor gemaakt om miljoenen records te bevatten. Zolang je structuur klopt en de juiste indexen gebruikt, hoeft dat dus geen probleem te zijn.
 
Brian Valenburg

Brian Valenburg

31/05/2010 12:02:56
Quote Anchor link
Oke super dank je wel :D
 
Elwin - Fratsloos

Elwin - Fratsloos

31/05/2010 12:08:12
Quote Anchor link
Dat zou je in een grote DB kunnen doen. Moet geen probleem zijn als je je queries goed op orde hebt.

Let er op dat je dan nog een tabel hebt en dat een kamer een relatie heeft met die nieuwe tabel. En hou er ook rekening mee dat je de klanten ook via een relatie aan de nieuwe tabel linkt. Anders zouden de klanten van Hotel X door Hotel Y gevonden worden.

Je huidige tabel room_occupation moet nog een eigen id hebben. Je zou kunnen zeggen dat de primaire index van die tabel de samengestelde sleutel 'room_id' en 'customer_id' is, maar dat zou betekenen dat een klant een kamer slechts een keer kan reserveren.

Zoals die tabel nu is opgezet is het een koppeltabel, immers meerdere klanten kunnen meerdere kamers reserveren, maar dan wel slechts een keer. Je wilt hier een tabel van maken met meerdere 1-op-veel relaties, waarbij een eigen id zorgt voor de primaire index.
 
Joren de Wit

Joren de Wit

31/05/2010 12:16:50
Quote Anchor link
Elwin Fratsloos op 31/05/2010 12:08:12:
Je wilt hier een tabel van maken met meerdere 1-op-veel relaties, waarbij een eigen id zorgt voor de primaire index.

Veel-op-veel relaties toch? Meerdere gasten kunnen meerdere kamers boeken. Goed punt van het eigen id, die had ik nog niet eens gezien :-)
 
Brian Valenburg

Brian Valenburg

31/05/2010 12:35:22
Quote Anchor link
Bedankt voor jullie uitgebreide commentaar. Ik heb het nu als volgt (hele kluif om naar te kijken nu tho):

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
hotel
hotel_id    int(11)
hotel_name    int(11)
hotel_logo    datetime
hotel_address    datetime
hotel_address_number    int(8)
hotel_address_additive    varchar(8)
hotel_postal_code    varchar(6)
hotel_city    varchar(39)
hotel_telephone    varchar(13)
hotel_email    varchar(150)
hotel_website    varchar(80)
hotel_description    text

hotelrooms
room_id    int(11)
room_number    int(5)
room_number_additive    varchar(5)
room_name    varchar(20)
hotel_id    int(11)

room_photos
photo_id    int(11)
room_id    int(11)
photo_name    datetime
photo_postdate    datetime
sort    Int(2)

room_occupation
id    int(11)
room_id    int(11)
date_from    datetime
date_till    datetime
date_reservation    Datetime
customer_id    varchar(40)

customers
id    int(11)
customer_name    varchar(20)
customer_surname    varchar(50)
customer_address    varchar(40)
customer_address_number    int(5)
customer_address_additive    varchar(5)
customer_postal_code    varchar(6)
customer_city    varchar(30)
customer_telephone    varchar(13)
customer_email    varchar(150)
customer_notes    text
hotel_id    int(11)
Gewijzigd op 31/05/2010 12:36:47 door Brian Valenburg
 
Joren de Wit

Joren de Wit

31/05/2010 12:41:06
Quote Anchor link
room_photos.photo_name datetime? --> Lijkt me varchar

room_occupation.date_from datetime --> Waarom geen date?
room_occupation.date_till datetime -- Waarom geen date?

customers.hotel_id int(11) --> Deze hoort hier niet. In welk hotel een gast verblijft wordt vastgelegd via de room_occupation tabel. Op deze manier zou een gast maar in 1 van de hotels kunnen verblijven, en nooit meer in een ander...
 
Brian Valenburg

Brian Valenburg

31/05/2010 12:47:04
Quote Anchor link
Super, ik koppel er wel een login systeem aan dan zodat klanten zich één keer registreren en kunnen inloggen. Was eerst de bedoeling dat ze iedere keer hun naw gegevens opgeven. Die van de date is ook een goede inderdaad. Tnx voor jullie hulp nogmaals!
 
Joren de Wit

Joren de Wit

31/05/2010 12:52:26
Quote Anchor link
Brian Valenburg op 31/05/2010 12:47:04:
Super, ik koppel er wel een login systeem aan dan zodat klanten zich één keer registreren en kunnen inloggen. Was eerst de bedoeling dat ze iedere keer hun naw gegevens opgeven.

Dan lijkt het mij een stuk gebruiksvriendelijker om bij een volgende keer te vragen of de naw gegeven van de gast nog kloppen, ipv ze elke keer opnieuw in te laten vullen. ;-)
 
Elwin - Fratsloos

Elwin - Fratsloos

31/05/2010 12:52:58
Quote Anchor link
Blanche PHP op 31/05/2010 12:16:50:
Veel-op-veel relaties toch? Meerdere gasten kunnen meerdere kamers boeken. Goed punt van het eigen id, die had ik nog niet eens gezien :-)
Volgens mij meerdere 1-op-veel relaties, omdat de reservering uniek is. Maar met die meerdere 1-op-veel relaties kan je meerdere kamers door meerdere klanten laten reserveren en blijft de reservering uniek.
Blanche PHP op 31/05/2010 12:41:06:
customers.hotel_id int(11) --> Deze hoort hier niet. In welk hotel een gast verblijft wordt vastgelegd via de room_occupation tabel. Op deze manier zou een gast maar in 1 van de hotels kunnen verblijven, en nooit meer in een ander...
Dat is een keuze die gemaakt moet worden. Allebei is in principe goed. Nu kan je zeggen dat de medewerkers van Hotel X de klanten van Hotel Y in kunnen kijken. Dat is ook weer niet goed.

De keus moet m.i. gemaakt worden na het beslissen van het volgende:
- is het een eigen systeem, op een eigen site, waar de klanten kunnen inloggen? Dus de site fungeert dan als tussenpersoon voor de hotels. Dan moet de hotel_id niet bij de klant opgeslagen worden, dan wordt het zeg maar een account waarmee je bij meerdere hotels kan reserveren.
- is het een te integreren systeem, oid? Dan moet je het hotel_id wel bij de klant opslaan, omdat de hotels dan niets met elkaar te maken hebben. Het zou dan raar zijn als je vraagt: 'bent u al geregistreerd bij Hotel X, of Hotel Y of Hotel Z?'. Puur alleen omdat je dan de klantgegevens hergebruikt.

Edit:
Let op voor overnormalisatie! Zie de laatste reacties van de tutorial. Je zou eigenlijk per reservering die adresgegevens op moeten slaan. En op basis van bovenstaande reacties (die tijdens deze reactie waren gepost) zou je de hotel_id niet bij de klant op moeten slaan.
Gewijzigd op 31/05/2010 12:55:11 door Elwin - Fratsloos
 

Pagina: 1 2 volgende »



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.