Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]problem z plikiem cronn
Forum PHP.pl > Forum > Przedszkole
csharnas
Witam posiadam plik który ma za zadanie raz na godzine sprawdzić aktualnie grających graczy na serwerze i zapisać je do bazy niestety nie wiem dlaczego plik zapisuje po kilka razy te dane oto mój plik

  1. / kasowanie starszych rekordów niż miesiąc statystyki_serwerow
  2.  
  3. $wynik= mysql_query("SELECT * FROM statystyki_serwerow");
  4. while($r3 = mysql_fetch_array($wynik)) {
  5.  
  6. $data_s = explode( "-", $data );
  7.  
  8. // przez pierwsze 3 dni miesiąca nie sprawdzane i nie usuwane
  9.  
  10. if($data_s[2] < "03") {
  11.  
  12. // sprawdzanie miesiąca
  13.  
  14. // jeśli jest styczeń
  15. if($data_s[1] == "01") {
  16. $data_s[0]--;
  17. $data_s[1] = "12";
  18. } else {
  19. $data_s[1] = $data_s[1] - "1"; // minus miesiac
  20. if($data_s[1] < "10") {
  21. $data_s[1] = "0" .$data_s[1];
  22. } else {
  23. $data_s[1] = $data_s[1];
  24. }
  25. }
  26.  
  27.  
  28.  
  29.  
  30. $data_star = $data_s[0]."-".$data_s[1]."-".$data_s[2]; // minus miesiąc
  31.  
  32. // jeśli data dodania rekordu jest starsza niż data star
  33.  
  34. if($r3['data'] < $data_star) {
  35. $zapytanie = "DELETE FROM statystyki_serwerow WHERE data='".$data_star."'";
  36. $idzapytania = mysql_query($zapytanie);
  37. }
  38. }
  39.  
  40. }
  41.  
  42.  
  43. /* POZYCJE */
  44.  
  45. $ranking = "0";
  46. $sprawdzan_serwer_off = "0";
  47. $dzisiaj = date('Y-m-d H:i:s'); // dzisiaj
  48. $czas = date('H:i:s'); // dzisiaj
  49. $godzina = date('H'); // dzisiaj
  50.  
  51. // Sprawdzanie serwerów
  52.  
  53. $wynik= mysql_query("SELECT * FROM server ORDER BY id DESC");
  54. while($wiersz = mysql_fetch_array($wynik)) {
  55.  
  56. if($wiersz['pokaz'] == "0") {
  57. } else {
  58.  
  59. $ip=explode(':',$wiersz['ip']);
  60. $hlsocket = new HLSocket($ip[0], $ip[1]);
  61. $info=$hlsocket->details();
  62.  
  63. $gq = new GameQ();
  64. $servers['server'] = array('cs', $ip[0], $ip[1]);
  65. $gq->addServers($servers);
  66. $gq->setOption('timeout');
  67. $gq->setFilter('normalise');
  68. $row_staty = $gq->requestData();
  69.  
  70. $adres_geo = "http://api.ipinfodb.com/v3/ip-city/?key=ab50144cd1c4da6ec2d25092e88ad420c86fd8d7946bd4ef7f001e4d6da8ce38&ip=".$ip[0]."&format=json";
  71. $api_geo = @file_get_contents($adres_geo);
  72.  
  73. $api_geo = json_decode($api_geo);
  74.  
  75. $skrot_panstwa_api_geo = $api_geo->countryCode;
  76. $fullname_panstwa_api_geo = $api_geo->countryName;
  77.  
  78. if($row_staty['server']['protocol'] == "47") {
  79. $protocol = "Dual";
  80. } else if($row_staty['server']['protocol'] == "48") {
  81. $protocol = "New";
  82. } else if($row_staty['server']['protocol'] == "17") {
  83. $protocol = "Old";
  84. }
  85.  
  86. $graczy = $info['players'];
  87. $graczymax = $info['max'];
  88. $mapa = $info['map'];
  89. $ip_staty = $wiersz['ip'];
  90.  
  91.  
  92. if($info['hostname'] == "") {
  93.  
  94.  
  95. $from = "System";
  96. $to_id = $wiersz['added'];
  97. $temat = "Błąd serwera";
  98. $time = date('Y-m-d H:i:s');
  99.  
  100. // tymczasowe deaktywowanie, jeśli nie jest deaktywowany a jest wyłączony i wysyłanie wiadomości
  101. if($wiersz['pokaz'] == "1") {
  102. if(!$wiersz['added'] == "") {
  103. $text = 'Serwer '.$wiersz['ip'].' podczas ostatniego sprawdzania napotkał błąd "Serwer nie jest aktywny" i został tymczasowo deaktywowany';
  104. mysql_query( "INSERT INTO `wiadomosci` VALUES( null, '{$form}', '{$to_id}', '{$temat}', '{$text}', '{$time}', '0' )" );
  105. }
  106.  
  107. $zapytanie = "UPDATE server SET pokaz='2', ilosc_spr='1' WHERE ip='".$wiersz['ip']."'";
  108. $idzapytania = mysql_query($zapytanie);
  109. } else {
  110. // jeśli jest deaktywowany - zwiększanie ilości spr bez wiadomości
  111. $ilosc_sprawdzan = $wiersz['ilosc_spr'];
  112. $ilosc_sprawdzan++;
  113. $zapytanie = "UPDATE server SET ilosc_spr='{$ilosc_sprawdzan}' WHERE ip='".$wiersz['ip']."'";
  114. $idzapytania = mysql_query($zapytanie);
  115.  
  116.  
  117. // deaktywowanie na zawsze
  118. if($wiersz['ilosc_spr'] == "4") {
  119. $text = 'Serwer '.$wiersz['ip'].' został deaktywowany na zawsze z powodu długiego czasu wyłączenia';
  120. // zmiana pokaz w serweraz z 2 na 0
  121. $zapytanie = "UPDATE server SET pokaz='0' WHERE ip='".$wiersz['ip']."'";
  122. $idzapytania = mysql_query($zapytanie);
  123.  
  124.  
  125. if(!$wiersz['added'] == "") {
  126. mysql_query( "INSERT INTO `wiadomosci` VALUES( null, '{$form}', '{$to_id}', '{$temat}', '{$text}', '{$time}', '0' )" );
  127. }
  128. }
  129.  
  130.  
  131.  
  132. }
  133.  
  134.  
  135.  
  136.  
  137. } else {
  138. if($wiersz['pokaz'] == "2") {
  139.  
  140. $from = "System";
  141. $to_id = $wiersz['added'];
  142. $temat = "Błąd serwera";
  143. $time = date('Y-m-d H:i:s');
  144.  
  145. if(!$wiersz['added'] == "") {
  146. $text = 'Serwer '.$wiersz['ip'].' został przywrócony';
  147. mysql_query( "INSERT INTO `wiadomosci` VALUES( null, '{$form}', '{$to_id}', '{$temat}', '{$text}', '{$time}', '0' )" );
  148. }
  149.  
  150. $zapytanie = "UPDATE server SET pokaz='1', ilosc_spr='0' WHERE ip='".$wiersz['ip']."'";
  151. $idzapytania = mysql_query($zapytanie);
  152. }
  153. }
  154.  
  155.  
  156.  
  157.  
  158. // dodawanie rekordu
  159. mysql_query( "INSERT INTO `statystyki_serwerow` VALUES( '{$data}', '{$cala_data}', '{$godzina}', '{$graczy}', '{$graczymax}', '{$mapa}', '{$ranking}', '{$ip_staty}')" );
  160.  
  161.  
  162.  
  163. }
  164.  
  165.  
  166.  
  167. }
  168.  
  169.  
  170.  
  171. ?>
Ruch Radzionków
zamień ten kod na ten i wejdź w ten plik na stronie i powiedz co ci pokaże

  1. / kasowanie starszych rekordów niż miesiąc statystyki_serwerow
  2.  
  3. $wynik= mysql_query("SELECT * FROM statystyki_serwerow");
  4. while($r3 = mysql_fetch_array($wynik)) {
  5.  
  6. $data_s = explode( "-", $data );
  7.  
  8. // przez pierwsze 3 dni miesiąca nie sprawdzane i nie usuwane
  9.  
  10. if($data_s[2] < "03") {
  11.  
  12. // sprawdzanie miesiąca
  13.  
  14. // jeśli jest styczeń
  15. if($data_s[1] == "01") {
  16. $data_s[0]--;
  17. $data_s[1] = "12";
  18. } else {
  19. $data_s[1] = $data_s[1] - "1"; // minus miesiac
  20. if($data_s[1] < "10") {
  21. $data_s[1] = "0" .$data_s[1];
  22. } else {
  23. $data_s[1] = $data_s[1];
  24. }
  25. }
  26.  
  27.  
  28.  
  29.  
  30. $data_star = $data_s[0]."-".$data_s[1]."-".$data_s[2]; // minus miesiąc
  31.  
  32. // jeśli data dodania rekordu jest starsza niż data star
  33.  
  34. if($r3['data'] < $data_star) {
  35. $zapytanie = "DELETE FROM statystyki_serwerow WHERE data='".$data_star."'";
  36. $idzapytania = mysql_query($zapytanie);
  37. }
  38. }
  39.  
  40. }
  41.  
  42.  
  43. /* POZYCJE */
  44.  
  45. $ranking = "0";
  46. $sprawdzan_serwer_off = "0";
  47. $dzisiaj = date('Y-m-d H:i:s'); // dzisiaj
  48. $czas = date('H:i:s'); // dzisiaj
  49. $godzina = date('H'); // dzisiaj
  50.  
  51. // Sprawdzanie serwerów
  52.  
  53. $wynik= mysql_query("SELECT * FROM server ORDER BY id DESC");
  54. while($wiersz = mysql_fetch_array($wynik)) {
  55.  
  56. if($wiersz['pokaz'] == "0") {
  57. } else {
  58.  
  59. $ip=explode(':',$wiersz['ip']);
  60. $hlsocket = new HLSocket($ip[0], $ip[1]);
  61. $info=$hlsocket->details();
  62.  
  63. $gq = new GameQ();
  64. $servers['server'] = array('cs', $ip[0], $ip[1]);
  65. $gq->addServers($servers);
  66. $gq->setOption('timeout');
  67. $gq->setFilter('normalise');
  68. $row_staty = $gq->requestData();
  69.  
  70. $adres_geo = "http://api.ipinfodb.com/v3/ip-city/?key=ab50144cd1c4da6ec2d25092e88ad420c86fd8d7946bd4ef7f001e4d6da8ce38&ip=".$ip[0]."&format=json";
  71. $api_geo = @file_get_contents($adres_geo);
  72.  
  73. $api_geo = json_decode($api_geo);
  74.  
  75. $skrot_panstwa_api_geo = $api_geo->countryCode;
  76. $fullname_panstwa_api_geo = $api_geo->countryName;
  77.  
  78. if($row_staty['server']['protocol'] == "47") {
  79. $protocol = "Dual";
  80. } else if($row_staty['server']['protocol'] == "48") {
  81. $protocol = "New";
  82. } else if($row_staty['server']['protocol'] == "17") {
  83. $protocol = "Old";
  84. }
  85.  
  86. $graczy = $info['players'];
  87. $graczymax = $info['max'];
  88. $mapa = $info['map'];
  89. $ip_staty = $wiersz['ip'];
  90.  
  91.  
  92. if($info['hostname'] == "") {
  93.  
  94.  
  95. $from = "System";
  96. $to_id = $wiersz['added'];
  97. $temat = "Błąd serwera";
  98. $time = date('Y-m-d H:i:s');
  99.  
  100. // tymczasowe deaktywowanie, jeśli nie jest deaktywowany a jest wyłączony i wysyłanie wiadomości
  101. if($wiersz['pokaz'] == "1") {
  102. if(!$wiersz['added'] == "") {
  103. $text = 'Serwer '.$wiersz['ip'].' podczas ostatniego sprawdzania napotkał błąd "Serwer nie jest aktywny" i został tymczasowo deaktywowany';
  104. mysql_query( "INSERT INTO `wiadomosci` VALUES( null, '{$form}', '{$to_id}', '{$temat}', '{$text}', '{$time}', '0' )" );
  105. echo '1';
  106. }
  107.  
  108. $zapytanie = "UPDATE server SET pokaz='2', ilosc_spr='1' WHERE ip='".$wiersz['ip']."'";
  109. $idzapytania = mysql_query($zapytanie);
  110. } else {
  111. // jeśli jest deaktywowany - zwiększanie ilości spr bez wiadomości
  112. $ilosc_sprawdzan = $wiersz['ilosc_spr'];
  113. $ilosc_sprawdzan++;
  114. $zapytanie = "UPDATE server SET ilosc_spr='{$ilosc_sprawdzan}' WHERE ip='".$wiersz['ip']."'";
  115. $idzapytania = mysql_query($zapytanie);
  116.  
  117.  
  118. // deaktywowanie na zawsze
  119. if($wiersz['ilosc_spr'] == "4") {
  120. $text = 'Serwer '.$wiersz['ip'].' został deaktywowany na zawsze z powodu długiego czasu wyłączenia';
  121. // zmiana pokaz w serweraz z 2 na 0
  122. $zapytanie = "UPDATE server SET pokaz='0' WHERE ip='".$wiersz['ip']."'";
  123. $idzapytania = mysql_query($zapytanie);
  124.  
  125.  
  126. if(!$wiersz['added'] == "") {
  127. mysql_query( "INSERT INTO `wiadomosci` VALUES( null, '{$form}', '{$to_id}', '{$temat}', '{$text}', '{$time}', '0' )" );
  128. echo '2';
  129. }
  130. }
  131.  
  132.  
  133.  
  134. }
  135.  
  136.  
  137.  
  138.  
  139. } else {
  140. if($wiersz['pokaz'] == "2") {
  141.  
  142. $from = "System";
  143. $to_id = $wiersz['added'];
  144. $temat = "Błąd serwera";
  145. $time = date('Y-m-d H:i:s');
  146.  
  147. if(!$wiersz['added'] == "") {
  148. $text = 'Serwer '.$wiersz['ip'].' został przywrócony';
  149. mysql_query( "INSERT INTO `wiadomosci` VALUES( null, '{$form}', '{$to_id}', '{$temat}', '{$text}', '{$time}', '0' )" );
  150. echo '3';
  151. }
  152.  
  153. $zapytanie = "UPDATE server SET pokaz='1', ilosc_spr='0' WHERE ip='".$wiersz['ip']."'";
  154. $idzapytania = mysql_query($zapytanie);
  155. }
  156. }
  157.  
  158.  
  159.  
  160.  
  161. // dodawanie rekordu
  162. mysql_query( "INSERT INTO `statystyki_serwerow` VALUES( '{$data}', '{$cala_data}', '{$godzina}', '{$graczy}', '{$graczymax}', '{$mapa}', '{$ranking}', '{$ip_staty}')" );
  163. echo '4';
  164.  
  165.  
  166.  
  167. }
  168.  
  169.  
  170.  
  171. }
  172.  
  173.  
  174.  
  175. ?>
csharnas
teraz po 6 wpisów dodaje smile.gif
Ruch Radzionków
ale co ci pokazuje jaką liczbe jak wejdzesz na strone i ten plik powinno ci pokazać np. 1 lub jakąś inną liczbę
csharnas
nic nie pokazuje tylko w bazie po 6 rekordów dodaje takich samych
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.