Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JS,php] Statystyki stron html
Forum PHP.pl > Forum > Przedszkole
Qbexus
Witam
Chcę zrobić system statystyk i nie było by z tym problemu, ale jest jedno, ale musi działać na stronach htm-lowych bez php. Czy wiecie jak coś takiego zrobić?
Chodziłoby o to, że wstawiam na stronę jakiś kawałek kodu JS (tak mam na serwerze strefay) a na innym serwerze jakiś skrypt php, który odbiera dane i przetwarza. Staty muszą zawierać kraj, z skąd był klik( link strony czy wyszukiwarka?) i czy był to robot.

I co nikt nie ma zadnego pomyslu jak by moglo to wygladac ?
$PHP_SELF
Ale dokładnie co mają pokazywać te statystyki?
Mi się wydaje że raczej w JS tu wiele niezrobisz, bo JS niewykonuje operacji na plikach, i nieobsługuje baz danych.
Qbexus
Tak jak pisałem Potrzebuje kraj, z jakkiego adresu ktos wszedł, i wizyty robotow.
To jak to jest na hostingach typu strefa.pl
gdzie dostaje taki kod do wklejenia
  1. <script language="JavaScript" src="http://poczta.strefa.pl/www/stats/stat.js?login=login&domain=example.com" type="text/javascript"></script

I to wszystko po zalogowaniu do panelu administracyjnego mam pelne staty.
erix
Cytat
Mi się wydaje że raczej w JS tu wiele niezrobisz, bo JS niewykonuje operacji na plikach, i nieobsługuje baz danych.

Przeczytaj co to jest php i JS...

Cytat
Tak jak pisałem Potrzebuje kraj, z jakkiego adresu ktos wszedł

Poszukaj czegoś w stylu ip2country.

Cytat
i wizyty robotow.

Analizuj User-Agent. Roboty typu Google czy MSN nie spoofują tych nagłówków, więc możesz śmiało na nich polegać.

Jeśli chodzi Ci tylko o te dwie funkcje, to wystarczy tylko php. Nie ma potrzeby używania JS-a (no, chyba, że potrzebujesz jakichś dodatkowych danych smile.gif).
Qbexus
Jak zrobić staty w php to wiem nie wiem jak to ozenic z sitami html i serwerem bez php. czyli skrypt php stoi na innym serwie jak strona.
erix
No, a jaki problem podlinkować skrypt php na innym serwerze np. poprzez obrazek?
Qbexus
A coś blizej o tej metodzie ?
erix
Na stronie, którą chcesz "statystykować" umieszczasz np. taki kawałek kodu:
  1. <img src="http://serwer.pl/statystyki/stats.php" style="border:0;width:1px;height:1px;visibility:hidden" alt="statystyki" />


Natomiast w pliku stats.php renderujesz byle jaki obrazek oraz. sprawdzasz poszczególne klucze zmiennej $_SERVER. Cała filozofia...
Qbexus
Pokombinuje a takie jeszcze pytanko czy to zlapie roboty one raczej nie maja obslugi JS.
erix
W opisanej przeze mnie metodzie nie potrzebujesz JS.
Wszystko "załatwia" php.
Qbexus
Ok dzieki właściwie juz działa mam tylko jeszcze jedno pytanie skad mozna wyciągnac dane gdzie był kliknięty link do strony objetej statami. Np czy była to wyszukiwarka, katalog czy co kolwiek innego bo
  1. <?php
  2. ["HTTP_REFERER"]
  3. ?>
podaje jaka strona została odwiedzona ale nie jest podane skąd ?
erix
Możesz to zrobić na dwa sposoby:
  • JS - sprawdzasz referer do strony, na której umieszczasz obrazek (niestety, nie pamiętam jaki to był obiekt, może document.referer).
  • php - też na stronie z linkiem do obrazka - masz np. http://serwer.pl/obrazek.php. Zrób coś takiego:
    1. <?php
    2. echo '<img src="http://serwer.pl/obrazek.php?skad='.base64_encode($_SERVER['HTTP_REFERER']).'" style="height:1px;width:1px;border:0;" alt="stats" />
    3. ?>
"Łapiesz"? smile.gif

PS. Zmień \" na zwykłe cudzysłowy, bo IPB coś źle wstawiło.
Qbexus
Tak kombinowalem tylko znowu jest ale smile.gif Bo w 1 przypadku bedzie info o stronie skad byl klik ale odpadna roboty Np.google bo one nie interpretuja js w 2 odpadaja serwery bez php i strony pure html-owe.
Zeby dalo sie pozenic ten poprzedni sposob ze zwyklym obrazkiem i ten z js co by i user i robot byl odnotowany . Ale i tak wielkie dzieki erix. biggrin.gif

Może jednak ktoś ma jakiś pomysł jak zrobić staty na stronach html żeby były i roboty i strony skad było kliknięte?
erix
Przejrzałem źródła phpMyVisites (po co wyważać otwarte drzwi? ;P) i tam referer jest przekazywany właśnie przez JS...

Chyba nic innego nie wykombinuje oprócz podanych przeze mnie rozwiązań...
Qbexus
Dzieki erix czyli albo roboty albo referrer. No chyba ze 2 osobne skrypty jeden bedzie zliczal wszystkie staty a 2 tylko referrery.
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.