Regisztráció megvalósítása MYSQL-el,2 külön táblába. Pontosan hogyan?
Sziasztok!
Van két táblám, kicsit leegyszerüsítve(több mező van):
Users:
id,username
Users_Desc:
id,user_id,email
Szóval a html formmal megkapom az adatokat, de nem tudom, hogy vigyem fel célszerűen?
1) vigyem fel előszőr az Users táblába az adatokat. utána kérdezzem le az id-t, majd hozzam létre a Users_Desc-ben az adott userhez tartozó rekordot?
2) Users_Desc táblában ne legyen id, hiszen az user_id is jó annak. és akkor egy lépésben feltölthetem , nem kell lekérdezgetni.
Még nem csináltam ilyesmit, és így nézve a 2. jobbnak tűnik, de lehet van benne vmi buktató, amit nem látok. Segítsetek pls!
Nem kell joiningolni.
Belépéskor letárolom az user_id-t Session-be.
Ha megnyitja a profilját, akkor meg user_id alapján csak egy lekérdezés.
Az admin felületnél mondjuk már van join, de azt meg nem hívják meg olyan gyakran, hogy zavaróan sok erőforrást foglaljon.
írtam, hogy leegyszerűsítettem a táblákat , hogy csak 1 adatmezőt tartalmazzanak.
Users táblában van username,jelszo,email bla bla bla
Users_Desc táblában van lakcímen át, születési dátumig minden vacak...
Én inkább így csinálnám:
CREATE TABLE `lol`.`users` (
`user_id` INT NOT NULL AUTO_INCREMENT ,
`email` VARCHAR(45) NOT NULL ,
`nickname` VARCHAR(45) NOT NULL ,
`real_name` VARCHAR(100) NOT NULL ,
`password` VARCHAR(16) NOT NULL ,
`password_salt` VARCHAR(40) NOT NULL ,
`created_at` DATETIME NOT NULL DEFAULT 'NOW()' ,
`updated_at` DATETIME NOT NULL DEFAULT 'NOW()' ,
`user_dscr` MEDIUMTEXT NULL ,
`lakcim` VARCHAR(255) NULL ,
`varos_id` INT(10) NULL ,
`megye_id` INT(2) NULL ,
PRIMARY KEY (`user_id`) ,
UNIQUE INDEX `email_UNIQUE` (`email` ASC) ,
UNIQUE INDEX `nickname_UNIQUE` (`nickname` ASC) )
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_general_ci;
így a városok meg a megyék mehetnek külön táblába, így sokkal könnyebb a usernek is (nem kell neki beírni, választ selectből) meg neked is kezelni, mert nem nagyon lesz hibás input. Ennél jobban szétszedni ebben a példában felesleges szerintem, meg általában sem kell tárolni mást, esetleg ip-t meg hogy mikor jelentkezett be uccsónak, de ez már ízlés dolga...
most két táblában van összesen 25 mező. és amilyen szerencsém van , ez még bővülni fog :).
egyszerűen lesz két insert , aztán happy. ahogy nézem, még inodb sincs ezen a vackon, szóval a kulcsokkal sem kell vesződnöm. >_<
köszi a tanácsokat :)
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!