Egyedi sorszám vagy azonosító generálása php/mysql?
Szeretnék egy egyedi azonosítót generálni minden felhasználónak. Tudnátok linkelni egy jól működő mintakódot.
A lényeg az, hogy ha már létezik az adatot táblában a sorszám generáljon újat.
Össze tudnám szögelni, de félek hogy van gyorsabb megoldás is a módszeremnél.
oh az persze tudom.
Csak szeretnék egy teljesen független azonosítót generálni a felhasználóknak, nem szeretném az id-t használni.
Nem tudom az miért nem jó, de második legegyszerűbb választás a microtime lehet. Persze azért érdemes ezt is ellenőrizni, bár elég kevés az esély, hogy két ember milisecre pontosan ugyanakkor regisztrál.
És legalább rögtön le lesz tárolva a regi dátuma is. ^^
Ha ilyet akarsz (bár sok értelme nincs, ha van ID), akkor használj UUID-t.
A microsec talán jó, amíg mondjuk csak 1 szerver van max, bár ott is már necces. Az, hogy "kicsi az esély", elég kevés vigasz, ha ettől döglik meg a rendszer.
Nekem volt egy projektem, ahol több felhasználónak kellett accountot generálni. Ehhez viszonylag értelmes login mező kell, ezért úgy oldottam meg, hogy a felhasználó nevéből (ami ismert volt) generáltam egy websemleges szót (6 karakter ékezetek és spec karakterek nélkül, kisbetűvel), ellenőriztem mennyi ilyen kezdetű van már a user táblában, és a számot egyel emelve hozzátettem a login név után. Így lett tothjo, tothjo2... tothjo139... a Tóth Józsikból :)
Ha nem "értelmes" azonosító kell, arra az auto incrementes id tökéletesen megteszi, arra való.
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!