Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> skrypt PHP, który zapisuje do txt infornmację o odwiedzającym stronę, apache w logach melduje błąd w czwartej linii
sp5smy
post 25.10.2023, 22:52:40
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 18.01.2017

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


wyciąg z logu error apche
/var/www/html/php/ip.php:4\nStack trace:\n#0

  1. <?php
  2. $fp=fopen("ip.txt", "a");
  3. //to wstawialem
  4. fwrite($file,$steamID."\r\n");
  5. fclose($file);
  6. flock($fp, 2);
  7. //to wstawialem
  8. //czas
  9. fwrite($fp, date("Y-m-d H:i")."\n");
  10. //czas
  11.  
  12.  
  13. fwrite($fp, $_SERVER['REMOTE_ADDR']."n");
  14. //Adres IP
  15.  
  16. fwrite($fp, $_SERVER['HOSTNAME']."n");
  17. //Nazwa Komputera
  18.  
  19. fwrite($fp, $_SERVER['HTTP_USER_AGENT']."n");
  20. //Zawartość nagłówka User Agent, wysyłanego przez przeglądarkę
  21.  
  22. fwrite($fp, $_SERVER['HTTP_HOST']."n");
  23. //Zawartość nagłówka Host
  24.  
  25. fwrite($fp, $_SERVER['SERVER_PROTOCOL']."n");
  26. //Nazwa i wersja protokołu
  27.  
  28. fwrite($fp, $_SERVER['GATEWAY_INTERFACE']."n");
  29. //Wersja specyfikacji CGI, używanej przez serwer
  30.  
  31. fwrite($fp, $_SERVER['HOSTTYPE']."n");
  32. //System operacyjny
  33.  
  34. fwrite($fp, $_SERVER['PATH']."n");
  35. //Systemowa scieżka serwera
  36.  
  37. fwrite($fp, $_SERVER['OSTYPE']."n");
  38. //System operacyjny
  39. // to wstawiłem
  40. fwrite($fp, date("H:i")."\n");
  41. // to wstawiłem
  42. fwrite($fp, $_SERVER['PHP_SELF']."\n" );
  43. fwrite($fp, $_SERVER['HTTP_COOKIE_VARS']."\n");
  44. fwrite($fp, $_SERVER['HTTP_POST_VARS']."\n");
  45. fwrite($fp, $_SERVER['HTTP_GET_VARS']."\n");
  46. flock($fp, 3);
  47. fclose($fp);
  48. ?>
  49.  


Skrypt na innych serwerach działa prawiłowo!!
Go to the top of the page
+Quote Post
viking
post 26.10.2023, 10:19:30
Post #2





Grupa: Zarejestrowani
Postów: 6 365
Pomógł: 1114
Dołączył: 30.08.2006

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


A gdzie tu masz zmienną steamid?


--------------------
Go to the top of the page
+Quote Post
Malinaa
post 20.12.2023, 22:29:38
Post #3





Grupa: Zarejestrowani
Postów: 518
Pomógł: 6
Dołączył: 21.07.2008

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


Bez $steamID to pewnie nie działa jak piszesz nawet na innych serwerach.

Zrób sobie może coś takiego

Kod
$filePath = 'data.txt';
$fileContent = $_SERVER['REMOTE_ADDR'] . '||' . $_SERVER['HOSTNAME'] . '||itd...' . "\n";  // tu daj dane z $_SERVER[], date() i co tylko chcesz zapisać

$handle = fopen($filePath, 'a');
fwrite($handle, $fileContent);
fclose($handle);

Chociaż już dla pierwszego z góry adresu IP samo $_SERVER['REMOTE_ADDR'] może być trochę mało

Rozpoznanie adresu IP
Kod
if (!empty($_SERVER['HTTP_CLIENT_IP'])) { $ip = $_SERVER['HTTP_CLIENT_IP']; }
elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) { $ip= $_SERVER['HTTP_X_FORWARDED_FOR']; }
else { $ip = $_SERVER['REMOTE_ADDR']; }

if ($ip == '') { $ip = 'No-IP'; }

i powinno sobie lepiej poradzić z pobieraniem adresu IP.

Kiedy dokładniej potestujesz będziesz widzieć ile adresów zostało zapisanych
zakładam, że 90% to dobry wynik, reszta = 'No-IP'.


--------------------
I welcome you on the Internet >>> Design by Malina
Go to the top of the page
+Quote Post

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 Wersja Lo-Fi Aktualny czas: 27.04.2024 - 16:09