dit is een oud topic, het nieuwe probleem dat is ontstaan staat verder naar beneden
[rml]FoOL in "[ db/php] opzetten"[/rml]
Na een aantal dagen (!) nadenken (nee dat is niet fulltime
) post ik het nu eens hier 
Ik moet een tool maken waarmee gegevens opgevraagd kunnen worden (ja dat is vaag maar het doet ook niet ter zake) en op het scherm getoond worden. Ik gebruik MySQL en PHP. Ik verwacht niet veel problemen tijdens het devven, het enige probleem waar ik tegenaan loop is de opzet van de db.
Stel, het gaat om persoonsgegevens.
Je zou van iemand de volgende gegevens kunnen hebben:
De sterretjes duiden categorieën aan. Deze zijn variabel ( -> de user moet categorieën kunnen maken, ordenen etc.)
voor de categorieën zou ik een tabel kunnen maken:
Wat de andere velden betreft (ook de velden ( -> de columns in de table ) : deze zijn ook variabel. Ik stel me dus een data tabel voor waar de records in staan (dus naam, adres, geboortedatum, etc), maar daarnaast nog een tabel met meer informatie, namelijk over de eigenschappen van die velden, waaronder
dit idee dus.
dan nog de eigenlijke data table:
Nu zit ik alleen met 1 vraagstuk: hoe ga ik deze gegevens ophalen? Stel ik haal één row op uit de data tabel, hoe haal ik daar dan de eigenschappen van de velden bij? (onder welke categorie valt de voornaam, hoe heet het veld en moet ik de inhoud weergeven in een textarea of een 1regelige input?)
Misschien hebben jullie ideeën over hoe je een db als deze beter op kunt zetten, of misschien kunnen jullie aangeven hoe ik de gegevens in PHP bij elkaar kan verzamelen?
Bedankt
Na een aantal dagen (!) nadenken (nee dat is niet fulltime
Ik moet een tool maken waarmee gegevens opgevraagd kunnen worden (ja dat is vaag maar het doet ook niet ter zake) en op het scherm getoond worden. Ik gebruik MySQL en PHP. Ik verwacht niet veel problemen tijdens het devven, het enige probleem waar ik tegenaan loop is de opzet van de db.
Stel, het gaat om persoonsgegevens.
Je zou van iemand de volgende gegevens kunnen hebben:
code:
1
2
3
4
5
6
7
8
9
10
| * persoonlijk voornaam achternaam geboortedatum * offline adres woonplaats * online emailadres website url |
De sterretjes duiden categorieën aan. Deze zijn variabel ( -> de user moet categorieën kunnen maken, ordenen etc.)
voor de categorieën zou ik een tabel kunnen maken:
code:
op deze manier dus.1
2
3
4
5
6
7
8
| table categories +----+---------+----------+ | id | caption | sortnmbr | +----+---------+----------+ | 0 | offline | 1 | | 1 | online | 2 | +----+---------+----------+ |
Wat de andere velden betreft (ook de velden ( -> de columns in de table ) : deze zijn ook variabel. Ik stel me dus een data tabel voor waar de records in staan (dus naam, adres, geboortedatum, etc), maar daarnaast nog een tabel met meer informatie, namelijk over de eigenschappen van die velden, waaronder
- onder welke categorie het veld valt
- wat de titel van het veld is
- of het een varchar / text is (meer zal niet nodig zijn)
- het id van het veld
- volgorde binnen categorie
code:
1
2
3
4
5
6
7
8
| table column_properties +---------+---------+----------+-------------+----------+ | colname | caption | sortnmbr | category_id | datatype | +---------+---------+----------+-------------+----------+ | 1stname | First | 4 | 2 | text | | 2ndname | Last | 5 | 2 | text | +---------+---------+----------+-------------+----------+ |
dit idee dus.
dan nog de eigenlijke data table:
code:
1
2
3
4
5
6
| +----+---------+---------+ | id | 1stname | 2ndname | +----+---------+---------+ | 1 | FoOL | blaat | | 2 | Jan | Jansen | +----+---------+---------+ |
Nu zit ik alleen met 1 vraagstuk: hoe ga ik deze gegevens ophalen? Stel ik haal één row op uit de data tabel, hoe haal ik daar dan de eigenschappen van de velden bij? (onder welke categorie valt de voornaam, hoe heet het veld en moet ik de inhoud weergeven in een textarea of een 1regelige input?)
Misschien hebben jullie ideeën over hoe je een db als deze beter op kunt zetten, of misschien kunnen jullie aangeven hoe ik de gegevens in PHP bij elkaar kan verzamelen?
Bedankt
edit:
openingspost aangepast, zie de replies hieronder
edit2:
Ik zal het er nog even duidelijk bij zeggen: ik zit nu al dagenlang met dit probleem in m'n kop, en ik kom gewoon niet op een goede oplossing. Ik heb al met een aantal medetweakers over dit probleem gesproken, maar we komen niet op een bruikbare oplossing. Ik hoop dat jullie me een trap in de goede richting kunnen geven
openingspost aangepast, zie de replies hieronder
edit2:
Ik zal het er nog even duidelijk bij zeggen: ik zit nu al dagenlang met dit probleem in m'n kop, en ik kom gewoon niet op een goede oplossing. Ik heb al met een aantal medetweakers over dit probleem gesproken, maar we komen niet op een bruikbare oplossing. Ik hoop dat jullie me een trap in de goede richting kunnen geven
[ Voor 25% gewijzigd door Verwijderd op 22-12-2002 11:30 ]