Компьютерный форум

Компьютерный форум (http://pchelpforum.ru/index.php)
-   Веб-строительство (http://pchelpforum.ru/forumdisplay.php?f=22)
-   -   Посетители на сайте... Требуется помощь.... (http://pchelpforum.ru/showthread.php?t=27100)

CozaNostra 03.05.2010 12:46

Посетители на сайте... Требуется помощь....
 
Добрый день, просьба помочь написать скрипт отображающий колличество людей просматривающих сайт, желательно на php.
у кого есть какие идеи?

Антон 03.05.2010 16:32

Вот статейка - http://www.woweb.ru/publ/59-1-0-405

CozaNostra 08.05.2010 14:20

Спасибо я уже сам разобрался сделал все если кому интересно могу выложить)

Atlent 08.05.2010 14:23

Цитата:

Сообщение от CozaNostra (Сообщение 222631)
Спасибо я уже сам разобрался сделал все если кому интересно могу выложить)

Конечно вылаживай, думаю ешё не одному пользователю это пригодится ;)

CozaNostra 08.05.2010 15:05

Создаем файл online.php с содержимым
Код:

<?php
$dataFile = "visit.txt";

$sessionTime = 30;

error_reporting(E_ERROR | E_PARSE);

if(!file_exists($dataFile)) {
        $fp = fopen($dataFile, "w+");
        fclose($fp);
}

$ip = $_SERVER['REMOTE_ADDR'];
$users = array();
$onusers = array();

$fp = fopen($dataFile, "r");
flock($fp, LOCK_SH);
while(!feof($fp)) {
        $users[] = rtrim(fgets($fp, 32));
}
flock($fp, LOCK_UN);
fclose($fp);

$x = 0;
$alreadyIn = FALSE;
foreach($users as $key => $data) {
        list( , $lastvisit) = explode("|", $data);
        if(time() - $lastvisit >= $sessionTime * 60) {
                $users[$x] = "";
        } else {
                if(strpos($data, $ip) !== FALSE) {
                        $alreadyIn = TRUE;
                        $users[$x] = "$ip|" . time();
                }
        }
        $x++;
}

if($alreadyIn == FALSE) {
        $users[] = "$ip|" . time();
}

$fp = fopen($dataFile, "w+");
flock($fp, LOCK_EX);
$i = 0;
foreach($users as $single) {
        if($single != "") {
                fwrite($fp, $single . "\r\n");
                $i++;
        }
}
flock($fp, LOCK_UN);
fclose($fp);

if($uo_keepquiet != TRUE) {
        echo '<div style="padding:5px; margin:auto; "><b>Сейчас на сайте ' . $i . '.</b></div>';
}

?>

в каталог с этим же файлом создаем файл visit.txt(пустой)

теперь с помощью инклуда вставляем строку в любое место в сайте
Код:

<? include('online.php'); ?>
вот и все.


Текущее время: 01:35. Часовой пояс GMT +4.

Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2026, vBulletin Solutions, Inc. Перевод: zCarot
Copyright ©2007-2016, PCHelpForum.ru.