Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL] System kolejki - problem
Forum PHP.pl > Forum > Przedszkole
ownede
Cześć,
Mam problem z systemem kolejki, znaczy bardziej nie wiem jak go zrobić niż mam problem.

Sprawa wygląda tak: każdy użytkownik musi dodać swoją biografię. Gdy ją doda, biografia jest dodawana do kolejki.
Do tej pory wszystko idzie dobrze. Kod wygląda m/w tak:
  1. <?
  2. $najdalszy = "SELECT * FROM web_users ORDER BY querystatus DESC LIMIT 1";
  3. $idnajdalszy = mysql_query($najdalszy);
  4. $kolej = mysql_fetch_array($idnajdalszy);
  5. $ostatni = $kolej['querystatus'];
  6. $pozycja = $ostatni + 1;
  7. $add = "UPDATE web_users SET querystatus='$pozycja' WHERE playerid=".getPlayerID($_SESSION['login']);
  8. $add2 = mysql_query($add) or die(mysql_error());
  9. ?>


Wszystko świetnie. Nie wiem tylko co robić gdy administrator sprawdza biografie.
Zeruje `querystatus` tego użytkownika, ustawiam `accept` na 1 lub 2 (1 - akceptowana, 2 - nie), ale co zrobić z `querystatus` innych?
Chodzi o to, że administrator może sprawdzać biografie nie po kolei.

Ma ktoś na to jakąś radę?

Z góry dzięki,
ownede

P.S. Przepraszam za chaotyczny opis
b4x
A może zrobić osobną tabelę `kolejka` wrzucać tam id usera...oraz status winksmiley.jpg po zaakceptowaniu aktualizować dane w web_users (accept). smile.gif
ownede
Cytat(b4x @ 20.03.2009, 11:41:45 ) *
A może zrobić osobną tabelę `kolejka` wrzucać tam id usera...oraz status winksmiley.jpg po zaakceptowaniu aktualizować dane w web_users (accept). smile.gif

Próbowałem, wyjdzie gorzej. To skrypt pod grę online.
Nie wiem poprostu jakie zapytanie wydać.
b4x
To innym wrzuć pozycję "0". (I licz od 1++).


SELECT * FROM web_users WHERE querystatus != "0" ORDER BY querystatus DESC LIMIT 1
ownede
Znaczy się mam jeszcze kolumne `wkolejce` (1 jeśli w kolejce, 0 jeśli nie)
Nie wiem jak przygotować query, które będzie przy akceptacji przez admina.
Żeby innym co są za tą osobą w kolejce zmniejszyć `querystatus` do querystatus-1, tylko tak, żeby nie ingerowało w tych niżej :|
b4x
To może...

  1. UPDATE web_users SET querystatus = querystatus-1 WHERE querystatus < $nr_w_kolejce_tego_usera AND wkolejce = "1"
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.