![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 26.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
Obecnie mój skrypt wygląda tak:
Czyli innymi słowy generuje jakiś numer, a jeśli taki numer znajduje się już w bazie to generuje go jeszcze raz. Przy połowie wykorzystanych (istniejących) numerów generowanie nowego będzie już utrudnione, a przy prawie zapełnionej bazie praktycznie niemożliwe (nie wspominając już o tym jak zostanie kilka numerów do zapełnienia bazy), ponieważ ciągle będzie trafiał na istniejące. Co powinienem tu zmienić aby nowy numer generował się szybko nawet przy dużej ich ilości i był niepowtarzalny? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 14 Pomógł: 1 Dołączył: 22.05.2008 Ostrzeżenie: (0%) ![]() ![]() |
Nie lepiej najpierw zrzucić wszystkie numery z bazy do tablicy, a potem z niej sprawdzać dostępność, zamiast wysyłać wiele zapytań na raz. Zapytania w pętli = die(); ;p
Ja najpierw wykonałbym tablicę z liczbami do losowania, potem usunął z niej elementy powtarzające się z tablicą numerów z bazy i wykorzystał array_rand dla tablicy do losowania aby uzyskać unikalną liczbę. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 6.10.2025 - 07:26 |