Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Generowanie kuponów losowo
Forum PHP.pl > Forum > PHP
ufo1990
Witam mam Poniższy kod który generuje losowo kupony w formie OPEN-3029, jednak mam problem z przerobieniem aby liczby były generowanie od początku tj OPEN-0001, OPEN-0002 itd.

  1. $random_coupon = 'OPEN-';
  2. $length = 4;
  3. $charset = '0123456789';
  4. $count = strlen( $charset );
  5.  
  6. while ( $length-- ) {
  7. $random_coupon .= $charset[ mt_rand( 0, $count-1 ) ];
  8. }
nospor
Znaczy sie nie chcesz, aby byly generowane losowo?
No to musisz sprawdzac jaki byl ostatni wygenerowany numer i generowac kolejny. Zakladam ze te numery zapisujesz w bazie wiec i z bazy masz brac ostatni
ufo1990
tzn. generuje np 100 kuponów które wtedy zapisuje w bazie. Ogólnie lepsze jest generowanie losowych liczb ale ulotki poszły już do druku facepalmxd.gif
nospor
No to nei bardzo rozumiem. Nie mozesz w petli zwiekszac licznika o 1?

  1. $licznik = 1; //wartosc od ktorej chcesz zwiekszac liczbe
  2. while ( $length-- ) {
  3. $random_coupon = 'OPEN-' . $licznik++;
  4. }
ufo1990
Cytat(nospor @ 17.10.2019, 13:06:52 ) *
No to nei bardzo rozumiem. Nie mozesz w petli zwiekszac licznika o 1?

  1. $licznik = 1; //wartosc od ktorej chcesz zwiekszac liczbe
  2. while ( $length-- ) {
  3. $random_coupon = 'OPEN-' . $licznik++;
  4. }


Twoja rozwiązanie generuje wszystkie kupony w formie OPEN-1234
nospor
Nie mozliwe. Raczej w formie
OPEN-1
OPEN-2
OPEN-3
OPEN-4

z racji, ze zapomnialem dac zera na poczatek. Sprawdz jeszczre raz
ufo1990
teraz już działa, dzięki za pomoc
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.