Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Losowe numery i sprawdzanie z bazą danych
looimaster
post
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:

  1. <?php
  2. $num_grn = rand(1,9).rand(0,9).rand(0,9).rand(0,9).rand(0,9).rand(0,9).rand(0,9).rand(0,9);
  3. print("loop:: $num_grn<br>");
  4. while(mysql_num_rows(mysql_query("select id from users where user_account={$num_grn}"))){
  5. $num_grn = rand(1,9).rand(0,9).rand(0,9).rand(0,9).rand(0,9).rand(0,9).rand(0,9).rand(0,9);
  6. print("looped $num_grn<br>");
  7. }
  8. ?>


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?
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 04:38