Frågan 9 juni 2008 13:04 #1 Håller på med några funktioner till en medlemsprofil, och har en fråga.
Om jag vill att medlemmen ska ha möjlighet att välja och spara flera alternativ (checkbox), hur löser jag det??
Exempel (intressen): [x]musik [x]film [x]spel
Hur gör jag så att alla val ovan sparas i databasen?
Hur gör jag sedan för att visa alla valen på profilen, (för andra medlemmar)?
Vilken fälttyp är bäst lämpad för detta?
T Travoni Medlem sedan okt. 2004 1 556 inlägg Det måste du göra i ett annat lager än i databasen.
Boolean eller bit skulle väl vara att föredra.
Travoni skrev:
Det måste du göra i ett annat lager än i databasen.
Boolean eller bit skulle väl vara att föredra.
Hmm... :q
Nu förstår jag ingenting. Hur menar du?
Du kanske visa lite exempelkod?
F freguz Medlem sedan feb. 2005 280 inlägg En kopplingstabell hade jag nog gjort, lite bökigt men värt besväret i längden.
tabell: UserData
kolumner: UserDataId (int primary), UserId (int), DataId (int)
lägg till o ta bort blir enkel sen att hantera.
Annars kan man ju lagra allt som en enda integer på Usernivå, tex musik = 1, spel = 2, film = 4, så kan man ju ha sin byte o lagra dessa bitar i.
dessa tre val skulle då bli 00000111, dvs = 7
M metalboy Medlem sedan jan. 2005 953 inlägg Jag skulle ha gjort en tabell som innehåller de olika intressena, och sedan en tabell som kopplar ihop varje enskild medlem med ett intresse.
Ex. (MySQL)
Tabell intressen:
CREATE TABLE intressen (
IID UNSIGNED INT AUTO_INCREMENT,
INamn VARCHAR(20) NOT NULL,
PRIMARY KEY (IID)
)
Tabell medlem_intresse:
CREATE TABLE medlem_intresse (
MID UNSIGNED INT,
IID UNSIGNED INT,
PRIMARY KEY (MID, IID)
)
Förklaring:
IID - Intressets ID-nummer.
INamn - Namn på intresse (t.ex. Musik)
MID - Medlemmens ID-nummer.
metalboy skrev:
Jag skulle ha gjort en tabell som innehåller de olika intressena, och sedan en tabell som kopplar ihop varje enskild medlem med ett intresse.
Ex. (MySQL)
Tabell intressen:
CREATE TABLE intressen (
IID UNSIGNED INT AUTO_INCREMENT,
INamn VARCHAR(20) NOT NULL,
PRIMARY KEY (IID)
)
Tabell medlem_intresse:
CREATE TABLE medlem_intresse (
MID UNSIGNED INT,
IID UNSIGNED INT,
PRIMARY KEY (MID, IID)
)
Förklaring:
IID - Intressets ID-nummer.
INamn - Namn på intresse (t.ex. Musik)
MID - Medlemmens ID-nummer.
Ok.. detta verkar mycket lättare. :p
Är detta ett "bra" sätt att göra det på då?