Autor | Zpráva | ||
---|---|---|---|
Majo Profil * |
#1 · Zasláno: 11. 2. 2008, 16:50:45
Zdravím.
Iba by ma zaujímalo, či pri každom volaní mktime(); je čislo vždy iné - teda by sa dalo použiť ako jedinečný identifikátor napr. v databáze. Nemohlo by sa stať, že sa niekedy toto číslo zopakuje (napr. za mesiac, rok...)? Ďakujem |
||
Nox Profil |
#2 · Zasláno: 11. 2. 2008, 16:54:31
(mktime vrací počet vteřin od jistého data, takže se v budoucnosti nezopakuje)
Podle okolností, ale co když budou ve stejnou vteřinu 2 zápisy? |
||
Majo Profil * |
#3 · Zasláno: 11. 2. 2008, 17:13:30
Myslím, že to je dosť nepravdepodobné.
|
||
Zdeněk Košťál Profil |
#4 · Zasláno: 11. 2. 2008, 17:19:33
Majo
Možná bych za to mktime přidal nějakou náhodnou složku aby se minimalizovala možnost dvou stejných zápisů. Riziko tam ale pořád bude, i když velmi malé. |
||
Leo Profil |
#5 · Zasláno: 11. 2. 2008, 17:24:04
V databazi vam jako jedinecny identifikator staci i obycejne cele cislo, staci, aby bylo primarnim klicem, Leo
|
||
Majo Profil * |
#6 · Zasláno: 11. 2. 2008, 17:24:49
Ako napr. pripočítať k mktime náhodné číslo? Myslím, že tak bude väčšia šanca (aj keď nepatrná), že sa niektoré dve čísla budú rovnať.
|
||
Majo Profil * |
#7 · Zasláno: 11. 2. 2008, 17:26:44
Leo
Ja by som potreboval, aby to jedinečné číslo malo 10 číslic. Dá sa nejako zapísať jedinečné ID namiesto 1,2,3,... takto: 0000000001, 0000000002, 0000000003, ...? |
||
Nox Profil |
#8 · Zasláno: 11. 2. 2008, 17:56:22 · Upravil/a: Nox
Majo
Leda jako text/char/varchar apod.... jaký k tomu je důvod? (třeba to totiž půjde i jinak) |
||
Leo Profil |
#9 · Zasláno: 11. 2. 2008, 18:15:00
"Ja by som potreboval, aby to jedinečné číslo malo 10 číslic. Dá sa nejako zapísať jedinečné ID namiesto 1,2,3,... takto: 0000000001, 0000000002, 0000000003"
To ale nejspis, pravdepodobne a zcela urcite potrebujete ne v db, ale na vystupu z ni, ne? Leo |
||
Majo Profil * |
#10 · Zasláno: 11. 2. 2008, 18:17:33
Dôvod by som si rád nechal pre seba... Chcel by som skrátka, aby pri registrácii mal každý užívateľ vlastné ID, ale s tým, že jeho dĺžka musí byť presne 10 znakov(čísel). A najvhodnejšie a najrýchlejšie sa mi zdalo použitie mktime (pretože je dosť nepravdepodobné, že sa v danú sekundu zaregistruje viac ako jeden užívateľ).
|
||
Leo Profil |
#11 · Zasláno: 11. 2. 2008, 18:25:37
"Chcel by som skrátka, aby pri registrácii mal každý užívateľ vlastné ID, ale s tým, že jeho dĺžka musí byť presne 10 znakov(čísel)."
Pokud Vam nevadi, ze bude existovat vzestupna rada po jednicce (takze uzivatel vi, kolik registraci uz probehlo), pouzil bych - v MySQL - id pro primarni klic, auto_increment, a na vystupu resil nuly na zacatku (formatovaci fci treba v php), Leo |
||
Apostol Profil * |
#12 · Zasláno: 11. 2. 2008, 19:09:04
Majo, Leo
zerofill -> ID INT(5) ZEROFILL; |
||
suky Profil |
#13 · Zasláno: 11. 2. 2008, 19:09:55
Leo
JJ, presne tak. |
||
Časová prodleva: 16 let
|
0