2011-08-07 6 views
6

Jak wyświetlić liczbę odwiedzających w Internecie przy ładowaniu strony za pomocą Google Analytics?Pokaż liczbę użytkowników na żywo na stronie internetowej za pomocą Google Analytics

Np. Gdy użytkownik wczytuje stronę, powie "58 odwiedzających online".

+0

ściśle mówiąc nie są one koniecznie online w czasie umieścić wiadomość na zewnątrz, jak sesje wygasają, ludzie uważne/Przeglądarki etc etc :) –

+0

Czy to nadal sprawa lub zaktualizowane API pozwalają robić że? –

+0

Podejrzewam, że to nadal jest możliwe. Chociaż będę miał skrzypce i zobaczę: P – Nicekiwi

Odpowiedz

3

Jak wyjaśnił Trott, w analityce nie ma takiej funkcji. Jednak daję ci bardzo bardzo starą alternatywę. Napisałem to w 2004 roku, więc jest przestarzałe, ale w zasadzie działa. Także, to działa bez użycia jakichkolwiek baz .. czasami trzeba retro rozwiązań tak :)

żywo Demo: kopli.pri.ee/stackoverflow/6976362.php

(trzeba ustawić chmod 777 dla bieżącego folderu, dzięki czemu użytkownicy. DAT mogą być tworzone automatycznie)

<?php 
$current_users_file = 'users.txt'; 
if (!file_exists($current_users_file)) fclose(fopen($current_users_file, "w")); 
$users = file($current_users_file); 
$found = false; 
$user_count = count($users); 
$fp = fopen($current_users_file, "w"); 
foreach($users as $user) { 
    $user = explode("|", $user); 
    if ($user[1]+300 < time()) { 
     $user_count--; 
     continue; 
    } elseif ($user[0] == $REMOTE_ADDR) { 
     $user[1] = time(); 
     $found = true; 
    } 
    $user = trim(implode("|", $user))."\n"; 
    fputs($fp, $user); 
} 
if (!$found) { 
    fputs($fp, $REMOTE_ADDR."|".time()."\n"); 
    $user_count++; 
} 
fclose($fp); 
echo 'Active users <b>' . $user_count . '</b>'; 
?> 
+0

interesujące: P Jestem pewien, że można go zaktualizować: D wielkie dzięki! – Nicekiwi

+1

To jest, kiedy zacząłem uczyć się php .. Później dodałem funkcję, która rejestruje max. liczba użytkowników. Zasadniczo inny plik .dat, który jest porównywany z $ user_count każdym ładunkiem. Nie najlepszy sposób, ale hej, dla początkującego nieźle ...: D –

2

Nie możesz. Google Analytics nie dostarcza danych z najświeższych danych. Będziesz musiał znaleźć alternatywną metodę.

(Od czasu, gdy otagowałeś pytanie PHP: Szybkim i brzydkim sposobem może być wykorzystanie sesji PHP i użycie odcięcia czasowego, np. Jeśli sesja nie jest aktywna w ciągu 5 minut, wtedy nie są uważane za " "Musisz upewnić się, że aktualizujesz sesję przy każdym ładowaniu strony.Myślę, że będziesz musiał przeczytać katalog zawierający pliki sesji i sprawdzić sygnatury czasowe plików.To jest prawdopodobnie okropny sposób to zrobić, jeśli Twoja strona musi się skalować, ale prawdopodobnie jest w porządku, jeśli chodzi o wstępną, szybką i brudną makietę, jeśli to wszystko, co robisz.)

4

Nie można tego zrobić w analitykach; jednak możesz to zrobić samodzielnie, korzystając z funkcji ping-back w JavaScript, gdzie co N sekund wywołujesz żądanie "bicia serca" na serwerze, używając XHR i dołączasz jakiś unikalny identyfikator. Kiedy trochę czasu (więcej niż N sekund) mija bez bicia serca z danego ID, możesz założyć, że użytkownik nie jest już aktywnie w tej witrynie. Co więcej, możesz połączyć to z interfejsami API widoczności, aby pokazać tylko zestaw użytkowników, którzy aktywnie przeglądają stronę (w przeciwieństwie do użytkowników, którzy mają otwartą stronę, ale na karcie w tle).

0

widzę Google wydała w ograniczonej wersji beta tego dostępu;

Interfejs API do raportowania w czasie rzeczywistym umożliwia przesyłanie danych w czasie rzeczywistym do uwierzytelnionego użytkownika. Dzięki temu możesz teraz raportować aktywność na swojej nieruchomości. Możesz korzystać z interfejsu API do raportowania w czasie rzeczywistym, by wyszukiwać wymiary i dane w celu tworzenia widżetów i pulpitów nawigacyjnych zorientowanych na klienta.

https://developers.google.com/analytics/devguides/reporting/realtime/v3/

Powiązane problemy