Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Licznik on-line, Sposób na napisanie licznika on-line
Ethel
post 17.11.2005, 17:05:41
Post #1





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 23.07.2005

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


Witam, mam prośbe, troche myślałem nad tym, wiem że to banalne, wiem że to "było poruszane na forum tysiąc razy" ale przeszukałem pod chasłem licznik online i licznik on-line, i nie znalazłem nic, poza prośbami o gotowe skrypty.

Problem jest taki że niewiem jak sie wziąsć do pracy nad takim skryptem - a więc jak smile.gif
Go to the top of the page
+Quote Post
Fipaj
post 17.11.2005, 17:14:11
Post #2





Grupa: Zarejestrowani
Postów: 691
Pomógł: 0
Dołączył: 19.01.2005
Skąd: Warszawa

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


1. Tworzysz plik o nazwie odwiedziny.txt o zawartości 0
2. Skrypt otwiera plik odwiedziny.txt
3. Skrypt dodaje do zawartości pliku odwiedziny.txt 1
4. Wyświetla licznik

Można też zrobić na MySQL.

Taki licznik nie będzie odporny na przeładowania... Ale bardzo łatwo go w ten sposób udoskonalić


--------------------
Go to the top of the page
+Quote Post
Ethel
post 18.11.2005, 18:19:42
Post #3





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 23.07.2005

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


Wole licznik pod mysql - dodam iż chodzi mi o licznik online, co jak ktoś wyjdzie ze strony, to wtedy jego "wpis" czyli wartość licznika +1 zostanie ... to jest poprostu kod na licznik całościowy, a ja chce tylko liczbe osób które siedzą aktualnie na stronie
Go to the top of the page
+Quote Post
aleksander
post 18.11.2005, 19:21:15
Post #4





Grupa: Przyjaciele php.pl
Postów: 742
Pomógł: 0
Dołączył: 14.12.2003
Skąd: Gdańsk, Trójmiasto

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


tabela w mysql
id, ip, starttime, lastrefreshtime

kiedy nowy user wejdzie robisz INSERT gdy refresh to tylko update lastrefreshtime. przy kazdym odpaleniu robisz
DELETE FROM tabela WHERE lasfrefreshtime < time()-300 // 5 minut
dzieki temu jak kogos nie bylo od 5 minut zostaje skasowany:)

jezeli masz logowanie to mozesz latwo pokazywac kto dokl;adnie jest online a nawet gdzie jest w tym momencie:]

pozdr
Go to the top of the page
+Quote Post
Ethel
post 18.11.2005, 20:16:11
Post #5





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 23.07.2005

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


ok, będe miał powiedzmy 5 online więc i 5 rekordów w tabeli, a jak teraz z tego wyczarować liczbe 5 ?


Acha i jeśli można prosić to napiszcie mi w jaki sposób sie pozbyć przy liczniku ogólnym dodawania "1" do tabelki, w przypadku przeładowań.

Ten post edytował Ethel 18.11.2005, 20:19:09
Go to the top of the page
+Quote Post
Lars
post 18.11.2005, 20:22:59
Post #6





Grupa: Zarejestrowani
Postów: 279
Pomógł: 15
Dołączył: 29.04.2005
Skąd: Gdynia

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


Cytat(Wyszukiwarka)
licznik on-line 
pomoc w php php Początkujący Hpsi+ 8 157 2005-04-25 17:03:14
napisał Spirit86


hwao
Ja na plikach zrobilem kiedys cos takiego bardzo dawno temuuu
http://amnesty.scene.pl/~szacool/hwao/php/Free/On-line/
moze Ci sie przyda - przeanalizuj
co do Twojego problemu to wg mnie tam jest okropnie duzo zapytanc do sql
Proponowal bym przeanalizowac kod i go ciut poprawic

lenistwo biggrin.gif

Cytat
ok, będe miał powiedzmy 5 online więc i 5 rekordów w tabeli, a jak teraz z tego wyczarować liczbe 5 ?


  1. <?php
  2. $rows=mysql_num_rows($query);
  3. ?>


--------------------
(\.../) This is Bunny. Copy and paste bunny into
(O.o) your signature to help him gain world domination.
(> <) Zanim zapytasz | Też się przyda | Pomogłem ci? Kliknij "Pomógł"
Go to the top of the page
+Quote Post
Ethel
post 18.11.2005, 23:21:00
Post #7





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 23.07.2005

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


Niestety jestem głupi i nie rozumiem zbyt wiele z tego skryptu co mi podaleś - nie znam sie aż tak dobrze :/

mysql_num_rows($query) - to zwraca ilość rekordów wybranych przez argument $query ?
Go to the top of the page
+Quote Post
Zajec
post 19.11.2005, 01:50:38
Post #8





Grupa: Zarejestrowani
Postów: 1 086
Pomógł: 8
Dołączył: 10.12.2003

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


Cytat(Ethel @ 2005-11-18 23:21:00)
Niestety jestem głupi i nie rozumiem zbyt wiele z tego skryptu co mi podaleś - nie znam sie aż tak dobrze :/

mysql_num_rows($query) - to zwraca ilość rekordów wybranych przez argument $query ?

Miło, że się przyznajesz. Spróbuj tak "drastycznie" zwiększyć swój poziom wiedzy zapamiętując adres:

php.net

Pozwolę sobie założyż, że wymyślisz do czego służy pole "Search for"

http://pl.php.net/manual/pl/function.mysql-num-rows.php
Go to the top of the page
+Quote Post
Diablos
post 19.11.2005, 11:18:52
Post #9





Grupa: Zarejestrowani
Postów: 165
Pomógł: 6
Dołączył: 17.06.2005

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


Moj skrypt, pisany na szybko wiec nie jest w calosci taki jaki powinien byc.

Utworz plik sesje.txt nadaj mu chmod 666

  1. <?php
  2. // ile userow na stronie
  3.  
  4. $arr = file('sesje.txt');
  5. $i = 0;
  6. foreach ( $arr as $line )
  7.  { 
  8.  
  9.  $piece = explode('|*|',$line);
  10.  $time = time() - $piece[1];
  11.  $time = $time/60;
  12.  if ( $time >= 3 )
  13.  {
  14.  $arr[$i] = "";
  15.  $arr = implode("",$arr);
  16.  $fp1 = fopen('sesje.txt' , "w");
  17.  flock($fp1,2);
  18.  fputs( $fp1 , $arr);
  19.  flock($fp1,3);
  20.  fclose($fp1); 
  21.  
  22.  }
  23. else 
  24.  {
  25.  $i++;  
  26. } 
  27. }
  28.  
  29.  
  30. $fp = fopen('sesje.txt','a+');
  31.  
  32. if ( $_SESSION['sesja'] == 0 )
  33. {
  34.  $string = getenv('REMOTE_ADDR') . '|*|' . time() . "rn";
  35.  fwrite($fp,$string);
  36.  $_SESSION['sesja'] = 1;
  37.  echo 'Sesja ma ID:' . session_id();
  38. } 
  39. else
  40. {
  41.  $_SESSION['sesja'] = 1;
  42.  echo 'Sesja ma ID:' . session_id();
  43. }
  44.  
  45. echo '<br><br>' . count($arr);
  46.  
  47. ?>
Go to the top of the page
+Quote Post
Levabul
post 19.11.2005, 11:55:08
Post #10





Grupa: Zarejestrowani
Postów: 197
Pomógł: 0
Dołączył: 11.07.2005

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


http://asilum.pieklo.pl/v2/readarticle.php?article_id=29


--------------------
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: 31.07.2025 - 06:22