2012-06-02 8 views
1

Как я могу считать посетителей ?? Я хочу вставить, когда открываю страницу, а когда закрываю или покидаю страницу, но не onunload И не хочу вставлять, когда обновляем страницу нижеприведенный код поможет мне вставить, когда открываешь страницу, но не помогаешь, когда закрываешьКак я могу сделать счетчик посетителей в php?

session_start(); 
if (!isset($_SESSION["visits"])) 
    $_SESSION["visits"] = 0; 
if ($_SESSION["visits"] > 1){ 
    echo 'visit='.$_SESSION["visits"]; 
    echo "You hit the refresh button!";} 
else{ 
    mysql_query(
     "INSERT INTO najd_visit(visit_userId, visit_staticId, visit_page, 
      visit_enterTime)VALUES ('$userId', '$Sid', '$title', '$date') "); 
    $_SESSION["visits"] = $_SESSION["visits"] + 1; 
    echo 'visit='.$_SESSION["visits"]; 
    echo "This is my site"; 
} 
+0

Возможный дубликат [Click counter php mysql?] (Http://stackoverflow.com/questions/1363181/click-counter-php-mysql) –

ответ

2

Чтобы использовать $_SESSION, вам нужно позвонить session_start() где-то заранее.

Я думаю, что код должен выглядеть следующим образом:

session_start(); 
if (!isset($_SESSION['visited'])) 
{ 
    echo "This is your first visit."; 
    $_SESSION['visited'] = TRUE; 

    // Do the MySQL query here 
} else { 
    echo "You hit the refresh button."; 
} 

echo "This is my site."; 

Таким образом, когда новый пользователь впервые посещает сайт (с новой сессией), его/ее визит будет храниться в базе данных, и мы будет иметь переменную в наборе сеансов, поэтому после кнопки обновления информация о посещении снова не будет добавлена ​​в базу данных.

Смежные вопросы