anoniem Geplaatst: 6 februari 2006 Delen Geplaatst: 6 februari 2006 Hallo ik hoop dat ik in het goede forum plaats anderss alvast mijn excusses. Ik wil graag een soor realestate listning script maken in php. Mijn php kennis en SQL kennis in werkelijk heel weining maar misschien leer ik het hier wel van. Nu wil ik het volgende systeem mijn gebruikers moeten meerdere objecten kunnen volgen. Ik heb dus een database tabel aangemaakt voor gebruikers en objecten Nu wil ik een tabel die voor de gebruikers gegevens opslaat van de objecten die ze volgen. Ik zou de gebruikers id kunnen koppelen aan het "object volg"id en in de tabel object volgen de id's op kunnen slaan van de objecten die deze gebruiker wil volgen. Ik weet niet hoe ik dit duidelijk moet uitleggen sorry :-? Nu heb ik de volgende SQL query gemaakt. [quote:6c0eac0477] CREATE TABLE GEBRUIKERS (id_sleutel tinyint(3) unsigned NOT NULL auto_increment, GebruikersNaam varchar(50) NOT NULL, Naam varchar(50) NOT NULL, AchterNaam varchar(50) NOT NULL, Telefoon varchar(15) NOT NULL, Mobiel varchar (15) NOT NULL, fAX VARCHAR(15), Email varchar(30) NOT NULL, Adres varchar(50) NOT NULL, Stad varchar(50) NOT NULL, Postcode varchar(6) NOT NULL, Geslacht varchar(5) NOT NULL, Leeftijd int(3) NOT NULL, Avatar varchar(100) NOT NULL, Class set('huurder','verhuurder','admin','eigenaar') NOT NULL, PRIMARY KEY (id_sleutel)); CREATE TABLE KAMERS (id_kamer int(11) NOT NULL auto_increment, Eigenaar varchar(50), Plaatsing date DEFAULT 'OOOO-OO-OO', Hits int(11), titel varchar(250), Stad varchar(50), Postcode varchar(6) NOT NULL, Prijs int(11), Huisgenoten int(3), Huisdieren set('ja','nee') NOT NULL, EigenToilet set('ja','nee') NOT NULL, EigenDouche set('ja','nee') NOT NULL, EigenKeuken set('ja','nee') NOT NULL, Balkon set('gedeeld','eigen','nee') NOT NULL, Oppervlak int(3) NOT NULL, Vedrieping int(3) NOT NULL, Beschrijving tinytext NOT NULL, filename varchar(50) NOT NULL, filesize varchar(50) NOT NULL, filetype varchar(50) NOT NULL, PRIMARY KEY (id_kamer)); CREATE TABLE VOLGKAMERS (id_monitor_room int(11) NOT NULL auto_increment, [b:6c0eac0477]Help wat moet ik hier invullen???[/b:6c0eac0477] PRIMARY KEY (id_monitor_room)); [/quote:6c0eac0477] Quote Link naar reactie
anoniem Geplaatst: 6 februari 2006 Auteur Delen Geplaatst: 6 februari 2006 In VolgKamers maak je minimaal 2 velden, Gebruiker (=Gebruikers.ID) en Kamer (=Kamers.ID) van hetzelfde type als ze in de andere tabel hebben. Ik zou Kamers.ID wat groter dan TinyInt maken om problemen bij gebruiker 256 te voorkomen. Gewoon allemaal int(11) maken. Je kan in je frontend bij een Gebruiker dan alle kamers tonen met SELECT * FROM VolgKamers WHERE Gebruiker = [de id van de gebruiker die je voor je hebt] en omgekeerd kun je bij een kamer ale gebruikers listen. Quote Link naar reactie
anoniem Geplaatst: 6 februari 2006 Auteur Delen Geplaatst: 6 februari 2006 [quote:c2ed309d00="XcesMedia"]Ik weet niet hoe ik dit duidelijk moet uitleggen sorry :-? [/quote:c2ed309d00] Je zou kunnen starten met wat punten en komma's in je tekst. Dit is bijna niet te lezen; laat staan dat we het meteen begrijpen. Als een gebruiker meerdere objecten kan volgen en een object aan meerdere personen kan zijn gekoppeld, dan is het voldoende om in een koppeltabel de ID van de gebruiker en de ID van het object op te slaan. Dit wordt ook wel een n-m relatie genoemd. [quote:c2ed309d00] [b:c2ed309d00]Volgkamer[/b:c2ed309d00] [u:c2ed309d00]ID gebruiker[/u:c2ed309d00] [u:c2ed309d00]ID object[/u:c2ed309d00] evt. aangevuld met andere metagegevens (bijv. datum) [/quote:c2ed309d00] Volgkamer is in dit geval je koppeltabel en onderstreepte velden zijn dan je Primary Key. [size=9:c2ed309d00]/edit: Paulus is me te snel af ;)[/size:c2ed309d00] Quote Link naar reactie
Aanbevolen berichten
Om een reactie te plaatsen, moet je eerst inloggen