Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]status serwerów
Forum PHP.pl > Forum > Przedszkole
mit2
witam mam problem z statusem serwerów chodzi mi o to gdy serwer jest włączony jest wszystko ok ale gdy jest wyłączony pokazuje mi takie coś
Warning: array_merge() [function.array-merge]: Argument #1 is not an array in E:\webserv\httpd\strony\serwery.php on line 577

Warning: array_merge() [function.array-merge]: Argument #2 is not an array in E:\webserv\httpd\strony\serwery.php on line 577

Warning: array_merge() [function.array-merge]: Argument #3 is not an array in E:\webserv\httpd\strony\serwery.php on line 577



a chciałbym żeby mi tego nie pokazywało mam taki kod:

  1. $ips = Array("$poka[ip]:$port[port]");
  2. $what_to_display["info"] =
  3. "Nazwa serwera" => "name",
  4. "Mapa" => "map",
  5. "Graczy Online" => "activeplayers",
  6. "Max Graczy" => "maxplayers",
  7. "Ping" => "ping",
  8. "!Pass" => "serverlocked"
  9. );
  10. $what_to_display["rules"] =
  11. "Czas Paki" => "mp_c4timer",
  12. "Czas Mapy" => "mp_timelimit",
  13. "!Amxmodx" => "amxmodx_version",
  14. "Kasa na start" => "mp_startmoney",
  15. "MaxRate" => "sv_maxrate",
  16. "Kontakt" => "sv_contact"
  17. );
  18. function sort_multi($data)
  19. {
  20. $new = Array();
  21. foreach($data as $key => $value)
  22. {
  23. $val = $value["kills"].".".$value["onlinetime"];
  24. $this_data = Array($val => $data[$key]);
  25. $new += $this_data;
  26. }
  27. ksort($new);
  28. $new = array_reverse($new);
  29. return($new);
  30. }
  31. function two_digit($string)
  32. {
  33. if(strlen($string) == 1)
  34. {
  35. $string = "0".$string;
  36. }
  37. return($string);
  38. }
  39.  
  40. require_once("class_PQ.php");
  41. foreach($ips as &$ip)
  42. {
  43. unset($data);
  44. $pq_data = PQ::Create(Array());
  45. $data = array_merge($pq_data->query_info($ip), $pq_data->query_rules($ip), $pq_data->query_players($ip));


co bym musiał zmienic żeby się to nie pokazywało
peter13135
najwyraźniej funkcja 3 parametry funkcji array_merge muszą być tablicami Przed wywołaniem tej funkcji, sprawdź czy parametry które podajesz są tablicą (może wystarczy sprawdzić tylko jeden ?) Przyda Ci się do tego funkcja is_array
mit2
możesz mi podac jak to moge zrobic
Hpsi
mit a manual umiesz czytac?
is_array sprawdza ci czy dana zmienna jest tablica, zwraca ci true / false
wiec potrzebna jest prosta instrukcja warunkowa
peter13135
może tak?
  1. if(is_array($pq_data->query_info($ip)))
  2. $data = array_merge($pq_data->query_info($ip), $pq_data->query_rules($ip), $pq_data->query_players($ip));

chociaż, chyba optymalnej było by przypisać to do zmiennej.
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.