Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Brakuje 0 w monitorze.., Brakuje 0 w monitorze..
miras
post 20.01.2011, 22:39:14
Post #1





Grupa: Zarejestrowani
Postów: 1 004
Pomógł: 9
Dołączył: 18.01.2011
Skąd: Siedlce

Ostrzeżenie: (30%)
XX---


WITAM! mam pewien skrypcik, który monitoruje pewien serwer ventrilo.. gdy jest 0 osób na serwerze to zamiast pokazywać 0/100 pokazuje /100 Wiem, że powinienem sprawdzić czy players = 0 jezeli tak to wyświetlic 0 jezeli nie to nic nie robic , ale gdy byle co zmienie pluje błędami na całą stronę...
Przykład jak pluje błędami: http://monitoring.xaa.pl/status_ventrilo/x...p;game=ventrilo

Przyklad jak nie wyświetla zera: http://monitoring.xaa.pl/status_ventrilo/i...p;game=ventrilo

Kod:
  1. <?php
  2.  
  3.  
  4. require_once 'GameQ.php';
  5.  
  6. // przykladowe czcionki
  7. define('TEMPESTA', 'status/fonts/tempesta.ttf');
  8. define('TAHOMA', 'status/fonts/tahoma.ttf');
  9. define('VERDANA', 'status/fonts/verdana.ttf');
  10. define('TAHOMA_BOLD', 'status/fonts/tahoma_bold.ttf');
  11.  
  12. // przyporządkowujemy zmienna do zmiennej globalnej
  13. $server = $_GET['server'];
  14. $game = $_GET['game'];
  15.  
  16. // Jesli nie podano ip lub gry
  17. if (isset($server) && !empty($server) && isset($game) && !empty($game))
  18. {
  19. // podzielenie adresu na ip oraz port
  20. list($ip, $port) = explode(":", $server);
  21.  
  22. $gq = new GameQ();
  23. // dodajemy serwer
  24. $gq->addServer('serwer', array($game, $ip, $port));
  25. $gq->setOption('timeout', 200);
  26. $gq->setFilter('normalise');
  27. $gq->setFilter('sortplayers', 'gq_ping');
  28. $results = $gq->requestData();
  29.  
  30. /**
  31. * rozpatrujemy dwa przypadki
  32. * 1 - serwer offline bo nie ma nazwy serwera
  33. * 2 - serwer online
  34. */
  35. if($results['serwer']['gq_hostname']=="")
  36. {
  37. $hostname = "Serwer OFFLINE";
  38. $players = "x";
  39. $playersmax = "x";
  40. $map = "Offline";
  41. }
  42. else
  43. {
  44. $hostname = $results['serwer']['gq_hostname'];
  45. $players = $results['serwer']['gq_numplayers'];
  46. $playersmax = $results['serwer']['gq_maxplayers'];
  47. $map = $results['serwer']['gq_mapname'];
  48. }
  49.  
  50. // utworzenie obrazka z tla
  51. $im = imagecreatefrompng("status/background.png");
  52. // kolor bialy
  53. $white = imagecolorallocate($im, 255, 255, 255);
  54. // polaczenie informacji do jednej zmiennej
  55. $info = $server ." ". $players ." / ". $playersmax ." ". $map;
  56. // gorny rzad, nazwa serwera
  57. imagettftext($im, 7, 0, 30, 10, $white, VERDANA, $hostname);
  58. // dolny rzad, ip serwera, gracze, mapa
  59. imagettftext($im, 7, 0, 30, 21, $white, VERDANA, $info);
  60.  
  61. // nie podano adresu w zmiennej $_GET
  62. } else {
  63. $im = imagecreatefrompng("status/background.png");
  64. $white = imagecolorallocate($im, 255, 255, 255);
  65. $info = "123.456:27015 31 / 32 de_inferno";
  66. imagettftext($im, 7, 0, 30, 10, $white, VERDANA, "Fragles.eu [TESTOWY SERWER] @ fragles.eu");
  67. imagettftext($im, 7, 0, 30, 21, $white, VERDANA, $info);
  68. }
  69.  
  70. // okreslenie typu zawartosci
  71. header('Content-type: image/png');
  72. imagepng($im);
  73. imagedestroy($im);
  74. ?>


--------------------
Go to the top of the page
+Quote Post
Crozin
post 20.01.2011, 22:47:21
Post #2





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


Wywal nagłówek informujący o tym, że przesyłana treść to obrazek (linia #71) i pokaż nam treść błędu.
Go to the top of the page
+Quote Post
miras
post 20.01.2011, 22:58:43
Post #3





Grupa: Zarejestrowani
Postów: 1 004
Pomógł: 9
Dołączył: 18.01.2011
Skąd: Siedlce

Ostrzeżenie: (30%)
XX---


Gdy wywale tylko to :header('Content-type: image/png'); to wywala takie same bzdury jak wczesniej a gdy wywale jeszcze :imagepng($im);
imagedestroy($im); to nic nie wyświetla - nawet monitoringu.


ale wdl mnie problem leży gdzie indziej, dlatego że nawet jak usune tam u góry informacje o skrypcie, które nie wchodzą w skład skryptu to wywala te bzdury..


--------------------
Go to the top of the page
+Quote Post
benio101
post 20.01.2011, 23:19:13
Post #4





Grupa: Zarejestrowani
Postów: 111
Pomógł: 10
Dołączył: 16.07.2009
Skąd: Toruń

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


Między 54. a 55. linię wstaw
  1. if($players=="")$players="0";
Go to the top of the page
+Quote Post
miras
post 20.01.2011, 23:36:58
Post #5





Grupa: Zarejestrowani
Postów: 1 004
Pomógł: 9
Dołączył: 18.01.2011
Skąd: Siedlce

Ostrzeżenie: (30%)
XX---


Wiem Wiem.. Robiłem tak właśnie, ale zobacz co to wywala ...
http://monitoring.xaa.pl/status_ventrilo/index.php


--------------------
Go to the top of the page
+Quote Post
Crozin
post 20.01.2011, 23:50:04
Post #6





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


Widocznie gdzieś wysyłasz jakieś białe znaki (niepotrzebnie używasz "?>", być może problemem jest BOM).
Go to the top of the page
+Quote Post
miras
post 21.01.2011, 00:29:04
Post #7





Grupa: Zarejestrowani
Postów: 1 004
Pomógł: 9
Dołączył: 18.01.2011
Skąd: Siedlce

Ostrzeżenie: (30%)
XX---


Nic takiego nie ma... ja po prostu nic nie moge zeedytować z tego kodu - bo od razu błędy wyskakują ocb ?

Może dam plik GameQ.php ?


--------------------
Go to the top of the page
+Quote Post
krowal
post 21.01.2011, 08:33:28
Post #8





Grupa: Zarejestrowani
Postów: 561
Pomógł: 72
Dołączył: 15.11.2006

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


Tak jak Crozin napisał, stawiam na to samo, jeśli działa, a po wyedytowaniu czegokolwiek przestaje to możliwe, że twój edytor dodaje jakieś znaczki na początku (niewidoczne w tym edytorze - BOM) i potem ci sypie takie błędy zamiast wyświetlić obrazek.


--------------------
Nawet świnka może wejść na drzewo kiedy jest chwalona :)
Go to the top of the page
+Quote Post
fander
post 21.01.2011, 09:12:23
Post #9





Grupa: Zarejestrowani
Postów: 231
Pomógł: 22
Dołączył: 6.10.2008

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


Cytat(Crozin @ 20.01.2011, 23:50:04 ) *
Widocznie gdzieś wysyłasz jakieś białe znaki (niepotrzebnie używasz "?>", być może problemem jest BOM).


A co szkodzi używanie short tags ?

Co do błędu, to zainstaluj sobie NetBeans albo Eclipse i w nim edytuj pliczki. Są to darmowe i bardzo dobre, jak nie najlepsze edytory.
Go to the top of the page
+Quote Post
Crozin
post 21.01.2011, 11:17:12
Post #10





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


Cytat
A co szkodzi używanie short tags ?
Napisałem "?>", nie "<?" - chodzi o znacznik zamykający blok PHP.
Cytat
Może dam plik GameQ.php ?
No podaj.
Go to the top of the page
+Quote Post
Mephistofeles
post 21.01.2011, 12:07:12
Post #11





Grupa: Zarejestrowani
Postów: 1 182
Pomógł: 115
Dołączył: 4.03.2009
Skąd: Myszków

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


Istnieje taka zasada, żeby nie zamykać kodu bez potrzeby.
Go to the top of the page
+Quote Post
miras
post 21.01.2011, 12:15:49
Post #12





Grupa: Zarejestrowani
Postów: 1 004
Pomógł: 9
Dołączył: 18.01.2011
Skąd: Siedlce

Ostrzeżenie: (30%)
XX---


nie mogę wrzucic pliku gameq, bo jest za duży..
PS. edytuje to w total commanderze na serwerze www - nigdy nie miałem takich problemów..


--------------------
Go to the top of the page
+Quote Post
krowal
post 21.01.2011, 14:27:28
Post #13





Grupa: Zarejestrowani
Postów: 561
Pomógł: 72
Dołączył: 15.11.2006

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


A total commander pliki w czym otwiera questionmark.gif? W Notatniku biggrin.gif I jeśli masz starszy Windows to BOM będzie na początku pliku przed tagiem otwierającym '<?php' co spowoduje ten właśnie błąd.


--------------------
Nawet świnka może wejść na drzewo kiedy jest chwalona :)
Go to the top of the page
+Quote Post
Mephistofeles
post 21.01.2011, 18:50:46
Post #14





Grupa: Zarejestrowani
Postów: 1 182
Pomógł: 115
Dołączył: 4.03.2009
Skąd: Myszków

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


Lepiej ściągnij sobie dobre IDE, np. NetBeans, z obsługą FTP. Do zmiany kodowania wystarczy Ci Notepad++.
Go to the top of the page
+Quote Post
benio101
post 21.01.2011, 19:15:54
Post #15





Grupa: Zarejestrowani
Postów: 111
Pomógł: 10
Dołączył: 16.07.2009
Skąd: Toruń

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


Czyli jednak wychodzi na złe kodowanie...
Go to the top of the page
+Quote Post
kulczycki
post 21.01.2011, 19:58:08
Post #16





Grupa: Zarejestrowani
Postów: 76
Pomógł: 8
Dołączył: 10.11.2010
Skąd: Polska,Katowice

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


Notepad++ i UTF8 bez BOM. Dość znany błąd winksmiley.jpg
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 21:09