Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Wykres graczy
mazyl
post
Post #1





Grupa: Zarejestrowani
Postów: 139
Pomógł: 2
Dołączył: 2.12.2011

Ostrzeżenie: (0%)
-----


Witam!

Mam taki mały problem, potrzebuje zrobić wykres graczy Counter Strike na danym serwerze (mniej wiecej taki jak np GameTracker ma na swoich monitorach serwerów)

Czy ma ktoś pomysł jak to zrobić ?

probowałem aby dane z wykresu były zapisywane w bazie mysql, ale serwer był za mocno obciazany ( serwerów gry jest sporo)

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Uriziel01
post
Post #2





Grupa: Zarejestrowani
Postów: 307
Pomógł: 37
Dołączył: 9.11.2010
Skąd: Zielona Góra

Ostrzeżenie: (0%)
-----


No wiesz ja tego do końca za Ciebie nie zrobię gdyż to ne jest tego typu forum, tutaj się pomaga nie odwala za kogoś robotę, ale to będzie coś w tym stylu (mogą być błędy, pisałem z palca):
  1. <?PHP
  2. header('Content-Type: image/png');
  3. $max_slots = 32;
  4. $wysokosc = 200;
  5. $szerokosc = 400;
  6. $gracze = array();
  7. for ($i =0;$i<20;$i++)
  8. {
  9. $rand = rand(5,$max_slots);
  10. $value = ($rand / $max_slots) * $wysokosc - 5;
  11. $gracze[] = $value;
  12. }
  13. $im = imagecreate (400, 200);
  14.  
  15. $black = imagecolorallocate($im, 0, 0, 0);
  16. $w = ImageColorAllocate ($im, 255, 255, 255);
  17. $red = ImageColorAllocate ($im, 255, 0, 0);
  18. $blue = ImageColorAllocate ($im, 0, 0, 255);
  19. $green = ImageColorAllocate ($im, 0, 255, 0);
  20. imagefilledrectangle ($im, 0, 0, $szerokosc, $wysokosc, $black);
  21. $szerokosc_pola = $szerokosc / count($gracze);
  22.  
  23. foreach($gracze AS $i => $serwer)
  24. {
  25. if (isset($gracze[$i+1]))
  26. {
  27. $colour = ImageColorAllocate ($im, 255 - (($i*$szerokosc_pola) * 100 / $szerokosc), (($i*$szerokosc_pola) * 100 / $szerokosc), 0);
  28. imageline($im, ($i*$szerokosc_pola) + 5, $wysokosc - $serwer, ($i+1)*$szerokosc_pola + 5, $wysokosc - $gracze[$i + 1], $colour);
  29. }
  30. }
  31. imageline($im, 5, 10, 5,$wysokosc - 5, $w);
  32. imageline($im, 5, $wysokosc - 5, $szerokosc - 5,$wysokosc - 5, $w);
  33. imagestring ($im, 5, 10, 1, $max_slots, $w);
  34. imagestring ($im, 5, 10, $wysokosc / 2 - 20, round($max_slots/2), $w);
  35. imagestring ($im, 5, 10, $wysokosc - 20, 0, $w);
  36. imagepng($im);
  37. ?>

(IMG:http://content.screencast.com/users/p.borecki90/folders/Jing/media/3c4de6f1-52fe-45a2-b204-2bfb0e63b8d5/2012-02-10_1243.png)

Ten post edytował Uriziel01 10.02.2012, 12:44:58
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: 24.12.2025 - 23:32