Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: System poleconych
Forum PHP.pl > Forum > PHP
gandziorz
Witam,
Mam wielki problem z systemem poleconych. Pozwolę opisać swój problem.

Struktura user to:
  1. CREATE TABLE `user` (
  2. `id` int(11) NOT NULL AUTO_INCREMENT,
  3. `login` text NOT NULL,
  4. `upline` text NOT NULL
  5. ) TYPE=MyISAM AUTO_INCREMENT=1;

Zawartość:
1 login1 null
2 login2 login1
3 login3 login1
4 login4 login2

Teraz jak to wszystko połączyć aby wyświetlić ilość poleconych na danym poziomie dla każdego użytkownika.
em1X
1) upline powinien wskazywac na ID uzytkownika a nie na jego nickname
2) trzeba poczytać o rekurencji
gandziorz
Poradziłem sobie z problemem.
Moje rozwiązanie wygląda tak:
  1. <?php
  2. function tabl_usr($war1) {
  3. $sql = "SELECT * FROM ". $DB['db_prefix'] ."user WHERE upline REGEXP('$war1') GROUP BY login";
  4. $query = mysql_query($sql);
  5. $num_rows = mysql_num_rows($query); 
  6. $arr = array();
  7. while ($row = mysql_fetch_array ($query)){
  8. $arr[] = $row['login'];
  9. }
  10. $lista = implode("|", $arr);
  11. return $lista;
  12. }
  13.  
  14. function ref_b($mojlogin, $poziom) {
  15. $level[1] = tabl_usr($mojlogin);
  16. for($i=1; $i<$poziom; $i++) {
  17. $level[$i+1] = tabl_usr($level[$i]);
  18. }
  19. return $level[$poziom];
  20. }
  21. ?>
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.