shivushrami Ответов: 1

В определенное время , как узнать, сколько людей вошли в систему с помощью PHP


В файле журнала как найти конкретное время сколько людей вошло в систему
пример:
Иоанн 12:00:47
Иоанн 04:18:54
Иоанн 09:21:40
Abc 09:22:34
Abc 09:23:15
Abc 09:23:54
Сина 09:30:21
Иоанна 10:38:20
Иоанн 09:18:27
Сина 09:19:01
Abc 09:20:44
Abc 09:22:12
Иоанн 09:24:02
Иоанна 10:09:59
это мои данные лог-файла здесь я хочу знать 09.23, сколько людей вошли в систему .
исключенный выход-Abc , Abc
В моем коде я получаю всю дату пожалуйста помогите мне

Что я уже пробовал:

if(isset($time))
{
по каждому элементу($файл_журнала как файл $)
{

$name_time = взорваться (' ' , файл $);
$name = explode('|', $name_time[0]);
$time = explode('|', $name_time[1]);

print_r($name[0]." ".$time[0]."
");



}

}

1 Ответов

Рейтинг:
0

debasish mishra

Эти строки вошли в $(документ).готовая функция.

fnShowImOnline();
setInterval('fnShowImOnline', 120000);
This is the javascript function...

function fnShowImOnline() {
    $.get('ajax/im_online.php');
}

А вот и PHP
<?php
    session_start();
    if ((isset($_SESSION['user']))&&($_SESSION['authorized']=='authorized')) {
        include('../includes/db.php');
        db_connect();
        mysql_query("UPDATE members SET last_checked_in = NOW() WHERE user_id = {$_SESSION['user']['user_id']}");
    }

?>

Счет идет прямо на PHP/mySQL.
//  Members online.
$online_sql = "SELECT COUNT(*) FROM members where last_checked_in > DATE_SUB(NOW(), INTERVAL 5 MINUTE)";
$online_RS = mysql_query($online_sql);
$online_row = mysql_fetch_row($online_RS);
$online = $online_row[0];

Для тех случаев, когда мне нужно динамически обновлять числа, этот бит ajax делает свое дело.
$.ajax({
    url: 'ajax/members_online.php',
    dataType: 'json',
    success: function(response) {
        if (!isNaN(response.total)) {
            $('#OnlineTotal').html(response.total + " Total ");
            $('#OnlineOnline').html(response.online +  " Online Now");
        }
    }
})

используя это для PHP/mySQL
//  Members online.
$online_sql = "SELECT COUNT(*) FROM members WHERE last_checked_in > DATE_SUB(NOW(), INTERVAL 5 MINUTE)";
$online_RS = mysql_query($online_sql);
$online_row = mysql_fetch_row($online_RS);
$online = $online_row[0];
//  Members total.
$total_sql = "SELECT COUNT(*) FROM members";
$total_RS = mysql_query($total_sql);
$total_row = mysql_fetch_row($total_RS);
$total = $total_row[0];
$response = json_encode(array('total'=>$total,'online'=>$online));
echo($response);


Ссылка:Граф PHP для зарегистрированных пользователей - переполнение стека[^]

Если это сработает, пожалуйста, проголосуйте за него.


W∴ Balboos, GHB

Если вы считаете необходимым вырезать/вставить чужую работу - просто поставьте ссылку.

[no name]

Как вы можете комментировать, не наблюдая за полным решением??Я призываю вас не голосовать против.Если вы видите, что решение было добавлено 3 часа назад, и я его не улучшил.Решение получило свою ссылку в списке 3 часа назад