Avatar billede ducks Nybegynder
28. september 2009 - 20:27 Der er 5 kommentarer og
1 løsning

Har et array og et felt med flere værdier

Jeg håber det er til at forstå.

Jeg har et array (PHP) med de brugergrupper en bruger er tilmeldt, fx:
[1] => true
[3] => true

og i databasen er modulerne angivet med, hvilke brugergrupper de er tilgængelige for med komma:
1,2,4

(Brugergrupper er opstillet på samme måde i databasen under en anden tabel - måske man kan lave en query direkte imellem dem?)

Mit problem er at konstruere en SQL der returnerer de moduler brugergruppen har adgang til, som altså er defineret i tabellen til modulet (Usergroups hedder kollonnen begge steder (users.usergroups, modules.usergroups))
Avatar billede arne_v Ekspert
28. september 2009 - 20:43 #1
Hvis du vil spare dig selv for mavesaar, saa faar du aendret den tabelstruktur, saa der er en raekke for hver adgang fremfor en komma separeret liste.
Avatar billede arne_v Ekspert
28. september 2009 - 20:45 #2
Hvis du haenger paa den saa skal du ud i noget:

WHERE LOCATE(CONCAT(',',x,','), CONCAT(',',felt,',')) > 0
Avatar billede ducks Nybegynder
28. september 2009 - 21:06 #3
hehe.. hvis der er mere logiske måder at sætte det op på, så må du gerne komme med et eksempel. Ingen grund til ikke at blive klogere ;)
Avatar billede arne_v Ekspert
29. september 2009 - 03:12 #4
modulid    modulnavn          brugerids
  1          a                  1,2,3
  2          b                  1,2,4,5

->

modulid    modulnavn
  1          a
  2          b

modulid    brugerid
  1          1
  1          2
  1          3
  2          1
  2          2
  2          4
  2          5
Avatar billede arne_v Ekspert
22. oktober 2009 - 22:43 #5
OK ?
Avatar billede ducks Nybegynder
24. oktober 2009 - 18:19 #6
Tak. Synes ikke altid jeg får mails herinde fra? Konfronterede min ven med tråden og dit svar her, han gav samme eksempel så det kører jeg efter nu :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester