Autor Zpráva
Jukik
Profil *
Chtěl bych se zeptat jestli někdo neví jak náhodně nebo nějak jinak vytvořit 12 znaků který můžou bejt v url a nikdy se nebudou opakovat?
Joker
Profil
Jukik:
náhodně nebo nějak
Kdyby „nějak jinak“, tak co třeba číslování: 1, 2, 3, atd.
Jukik
Profil *
to ja to mam nahodne, ale potřeboval bych to nějak ošetřit, aby se nevytvořilo stejný číslo když už bude v DB.
Joker
Profil
Jukik:
Souvislé číslování nejde použít? To je totiž nejjednodušší, stačí vždycky zvolit (minulé číslo) + 1 a nemůže se stát, že by se to opakovalo.
Samozřejmě ne vždy je to vhodné (hlavně v případech, kdy není vhodné, aby to číslování bylo předvídatelné).

Pak je ta primitivní možnost, vygenerovat náhodný záznam, otestovat zda už v databázi je, pokud ano, generovat nový až se vygeneruje nějaký co v databázi není.
Použitelné jen v případech, kdy maximální představitelný počet souborů bude nepochybně o řády menší, než počet možných názvů. Například tisíce souborů versus název generovaný třeba jako md5(IP + microtime()), čili je extrémně nepravděpodobné, že by nějaká kolize vůbec nastala.

Další možnost je předgenerovat si číselník hodnot a potom postupovat algoritmem: Vyber nějakou hodnotu (třeba i náhodně) z nepoužitých, označ ji jako použitou a použij pro název souboru.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0