[PHP/MySQL] Voor bepaalde klanten bepaalde velden :S

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • xces
  • Registratie: Juli 2001
  • Laatst online: 08-09 17:20

xces

To got or not to got..

Topicstarter
Ik heb een tabel met velden, de ene klant mag andere velden aan als de andere klant;

Klanttabel:
1 Pietje bel
2 Jaap jongbloed

Veldentabel:
1 Voornaam
2 Achternaam
3 Telefoon
4 Email

Nu wil ik dus dat klant pietje bel alle velden heeft, en klant jaap jongbloed alleen telefoon en email (bij voorbeeld).

Is de makkelijkste oplossing om hiervoor een extra tabel te maken zoals dit:

veldentabel:
1 1
1 2
1 3
1 4
2 3
2 4

Of heeft iemand een beter idee hoe ik dit kan realiseren? Inner joins etc zijn geen probleem voor me, dus doe maar lekker moeilijk.. :D Tia

Acties:
  • 0 Henk 'm!

  • bgever
  • Registratie: April 2002
  • Laatst online: 28-05-2021
Ik vraag me af of je niet gewoon alle velden in één tabel kunt zetten. Want wat kost het meeste data? Een leeg veld, of een extra tabel waar je buten de data ook een klantid kolom moet bewaren... Ik denk (lees: niet weet) het eerste. Zowieso kun je dan makkelijkere query's opstellen ;)

Acties:
  • 0 Henk 'm!

  • sjroorda
  • Registratie: December 2001
  • Nu online
Als het bij deze 4 velden blijft is de opmerking van oikoyama van toepassing; als je van tevoren niet weet welke velden je nodig hebt (of er bijvoorbeeld ooit nog eens een veld 'geslacht' bijkomt of zo), dan moet je je eigen oplossing gebruiken.

Acties:
  • 0 Henk 'm!

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 08:51

Janoz

Moderator Devschuur®

!litemod

In welke context moet ik dit zien? Zijn bepaalde klanten slechts bevoegd om enkele informatie van alle records te zien of is het ook nog per record?

In het eerste geval zou ik denken aan een soort privilege tabel oid, maar je zult dit waarschijnlijk toch in je buisness of presentatie laag moeten oplossen. In principe gaat het over het wel of niet opnemen van een bepaalde kolom in een select statement.

(hmm .. ik bedenk me nu net dat je mischien nog wel een soort if structuur kunt doen die null terug geeft waneer een klant een bepaalde kolom niet mag zien....)

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


Acties:
  • 0 Henk 'm!

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Volgens mij is dit nog wel typisch iets wat je met NULL-able velden kan doen, zodra je echt de meest vreemde velden wilt ondersteunen wordt het wat anders. Maar als het altijd dezelfde basisset is enzo zou ik daar eerst es naar kijken.

Acties:
  • 0 Henk 'm!

  • beetle71
  • Registratie: Februari 2003
  • Laatst online: 09-09 15:24
Misschien een te simpel idee, (nee niet echt ultra performance efficient ;) )maar toch

Tableconcept:
show_voornaam(true/false)
voornaam
show_achternaam(true/false)
achternaam
show_email(true/false)
email
enz..
is wat makkelijker query'en enz.
Met een beetje creativiteit en handige if's kun je zo kijken of je een veld moet laten zien ja/nee enz..

Acties:
  • 0 Henk 'm!

  • xces
  • Registratie: Juli 2001
  • Laatst online: 08-09 17:20

xces

To got or not to got..

Topicstarter
Het gaat dus om een rit aanvraag systeem via internet. De velden zijn er nu al 20 en kunnen er nog meer worden. Qua koppeling klant / velden komt er een beheersysteem, en tinyints hebben dus geen enkele waarde toevoeging (grootte effect) op de database.

Met andere woorden zijn we 1 module aan het ontwikkelen voor meedere (lees +200) klanten.

Acties:
  • 0 Henk 'm!

  • EnsconcE
  • Registratie: Oktober 2001
  • Laatst online: 19-06 00:07
je kan het doen door een extra tabel te maken met daarin:
naam rechten
pietje bell 1
jan jansen 2
dan if rechten is 1 laat dan naam/adres enz... zien
elseif rechten is 2 dan alleen telnummer

Acties:
  • 0 Henk 'm!

  • BobDay
  • Registratie: December 2001
  • Laatst online: 11-08 21:02
Misschien is dit topic handig te gebruiken: 7 = 4 + 2 + 1

Het gaat hierbij vooral om het stukje van .oisyn

Hier gebruiken ze een rechten methode dat een macht van 2 heeft: 1,2,4,8,...

43% of all statistics are worthless

Pagina: 1