Онлайн гости и потребители
Публикувана на 26 дек 2008, в 03:11 часаДобавена от Златко в категория PHP, SQL
Такам , взема да се разпиша за днеска в блога
Намерих един стар скрипт , за пресмятане на онлайн гостите и потребители , като изкарваше 10-те потребители онлайн.И понеже,аз нали не съм интересен и затова не пиша много из блога , ето ми един повод да пропиша
<?php
ob_start();
session_start();
mysql_connect("localhost","***","***")or die(mysql_error());
mysql_select_db("***")or die(mysql_error());
if(!isset($_SESSION['user'])){
$ip = $_SERVER['REMOTE_ADDR'];
$time = time();
$sql = mysql_query("SELECT ip FROM active_guests WHERE ip='$ip'");
if(mysql_num_rows($sql) > 0){
mysql_query("UPDATE guests SET data='$time' WHERE ip='$ip'")or die(mysql_error());
}
else{
mysql_query("INSERT INTO guests (`id`,`ip`,`data`) VALUES ('NULL','$ip','$time')");
}
}
else{
$user = $_SESSION['user'];
$time = time();
mysql_query("INSERT INTO active_users (`id`,`user`,`timestamp`) VALUES ('NULL','$user','$time')")or die(mysql_error());
}
$time = time()-60;
$sqlA = mysql_result(mysql_query("SELECT COUNT(id) FROM users WHERE timestamp > $time"),0);
$sqlB = mysql_result(mysql_query("SELECT COUNT(id) FROM guests WHERE data > $time"),0);
$sqlC = mysql_query("SELECT * FROM users WHERE timestamp > $time");
$i = "1";
echo " Гости онлайн: $sqlB <br /> ";
while($row = mysql_fetch_array($sqlC)){
echo "$i » $row[username] <br /> ";$i++;
}
?>
За тоя скрипт , ще ви трябва една обикновенна база данни с няколко колонки , потребителско име , парола ,емайл и timestamp и още една база данни за гостите (в моя случай тя се казваше active_guests).Приемам всякакви препоръки и заръки относно скрипта , като не гарантирам сигурност с използването му







