Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]wyswietlanie wszystkich aktywnych ip
shreker
post
Post #1





Grupa: Zarejestrowani
Postów: 270
Pomógł: 0
Dołączył: 21.05.2008

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


Mam problem z pewnym skryptem, mianowicie chciałbym sprawdzić wszystkie aktywne ip (uzytkownikow online). Pomimo że jest na stronie np 3 userow petla wyświetla mi tylko jeden adres ? w czym problem ?
poniżej fragment kodu :
  1. // ...
  2. $arr = array($_SERVER['REMOTE_ADDR']);
  3. foreach ($arr as $value)
  4. {
  5. echo $value;
  6. }
  7. // ...
Go to the top of the page
+Quote Post
Fifi209
post
Post #2





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

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


Nie dziwię się.

Musiałbyś to zapisywać do jakiegoś podręcznego pliku. (IMG:style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
shreker
post
Post #3





Grupa: Zarejestrowani
Postów: 270
Pomógł: 0
Dołączył: 21.05.2008

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


nie bardzo rozumiem ? całość jest zapisana w skrypcie jako część funkcji, a ten fragment powinien odpowiadać za wyświetlanie wszystkich obecnych ip online.
Go to the top of the page
+Quote Post
bmL
post
Post #4





Grupa: Zarejestrowani
Postów: 301
Pomógł: 25
Dołączył: 15.07.2007
Skąd: Olsztyn

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


A gdzie kolega znalazł takie zastosowanie? Gdyby to działało to dopiero bym się zdziwił. REMOTE_ADDR wyświetli Ci tylko IP osoby, która wywołała ten skrypt. W tym wypadku ty go wywołujesz więc widzisz swoje IP.
Go to the top of the page
+Quote Post
tehaha
post
Post #5





Grupa: Zarejestrowani
Postów: 1 748
Pomógł: 388
Dołączył: 21.08.2009
Skąd: Gdynia

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


a od kiedy $_SERVER['REMOTE_ADDR'] to są ip wszystkich użytkowników online? musisz to wprowadzać do jakiejś bazy w najprostszym przypadku przy każdym odświeżeniu strony (lepiej ajaxem cyklicznie) oraz czas wprowadzania, potem np. pobierasz z tabeli wszystkie numery ip gdzie czas wpisu < np. 3min, i w taki sposób masz ludzi online
Go to the top of the page
+Quote Post
shreker
post
Post #6





Grupa: Zarejestrowani
Postów: 270
Pomógł: 0
Dołączył: 21.05.2008

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


sorki trochę pozwoliłem to sobie uproscić, oczywiście macie rację zamiast $_SERVER['REMOTE_ADDR'] jest:
  1. if (@isset($_SERVER["HTTP_CLIENT_IP"]))
  2. {
  3. return @$_SERVER["HTTP_CLIENT_IP"];
  4. }
  5. elseif (@isset($_SERVER["HTTP_X_FORWARDED_FOR"]))
  6. {
  7. return @$_SERVER["HTTP_X_FORWARDED_FOR"];
  8. }
  9. elseif (@isset($_SERVER["HTTP_X_FORWARDED"]))
  10. {
  11. return @$_SERVER["HTTP_X_FORWARDED"];
  12. }
  13. elseif (@isset($_SERVER["HTTP_FORWARDED_FOR"]))
  14. {
  15. return @$_SERVER["HTTP_FORWARDED_FOR"];
  16. }
  17. elseif (@isset($_SERVER["HTTP_FORWARDED"]))
  18. {
  19. return @$_SERVER["HTTP_FORWARDED"];
  20. }
  21. else
  22. {
  23. return @$_SERVER["REMOTE_ADDR"];
  24. }

sorki za drobną pomyłkę ;-)
Go to the top of the page
+Quote Post
Fifi209
post
Post #7





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

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


Po pierwsze wywal te @ i oducz się czegoś takiego.

Po drugie, tłumaczymy Ci że każdego odwiedzającego (jego IP) musisz zapisać do tymczasowego pliku/bazy skąd zostanie usunięty po np. 10 minutach nieaktywności. Z tego pliku/bazy możesz wtedy odczytać wszystkie IP odwiedzających.
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 Aktualny czas: 23.08.2025 - 15:12