Bezoekers - leden online
Auteur: Bart - 08 maart 2005 - 18:47 - Gekeurd door: Tuinstoel - Hits: 8387 - Aantal punten: 2.95 (10 stemmen)
Dit is een leden/bezoekers online script.
Je dient de eerste file te gebruiken om het aantal weer te geven.
En het 2e is een functie die je boven elke pagina moet zetten om de tijd up te daten.
<?php
$query="REPLACE INTO online (userIP,memberID,location) VALUES ('".$iIP."', '".$_SESSION['id']."', '".$_SERVER['REQUEST_URI']."')";
?>
<?php $query="REPLACE INTO online (userIP,memberID,location) VALUES ('".$iIP."', '".$_SESSION['id']."', '".$_SERVER['REQUEST_URI']."')"; ?>
Hier zie je dat er $_SESSION['id'] wordt gebruikt om het memberID te definieren, dit kun je veranderen naar jou situatie, omdat iedereen andere SESSION namen gebruikt.
Ten tweede zie je REPLACE INTO.
REPLACE zorgt ervoor:
1. Kijkt of er gegevens overeen komen met de gegevens die worden in gevoerd. Als de gegevens overeen komen met de gegevens in het veld met de eigenschap PRIMARY KEY voert ie een UPDATE query uit.
2. Komen er geen gegevens overeen met dat veld (met PRIMARY KEY) dan voert ie een INSERT query uit
|
Code: |
<?php
$sGasten = mysql_query("SELECT COUNT(*) AS aantal FROM online WHERE memberID = ''") or die("gst :".mysql_error());
$iBezoekers = mysql_result($sGasten, 0);
$sLeden = mysql_query("SELECT COUNT(*) AS aantal FROM online WHERE memberID != ''") or die("ldn :".mysql_error());
$iLeden = mysql_result($sLeden, 0);
echo 'Gasten: '.$iBezoekers.'<br>';
echo 'Leden: '.$iLeden.'<br>';
$sOn_leden = mysql_query("SELECT * FROM online WHERE memberID != ''") or die("lidn:".mysql_error());
$aLeden_id = mysql_fetch_array($sOn_leden);
$geg_name = mysql_query("SELECT * FROM leden WHERE id = '".$aLeden_id['memberID']."'") or die("geg_name:".mysql_error());
while($aRow = mysql_fetch_array($geg_name))
{
echo $aRow['gebruikersnaam'];
}
?>
<?php echo 'Gasten: '.$iBezoekers.'<br>'; echo 'Leden: '.$iLeden.'<br>'; { echo $aRow['gebruikersnaam']; } ?>
<?php
function online()
{
$tDel_time=date("YmdHis",(time()-180));
// Voer verschoon-query uit
mysql_query("DELETE FROM online WHERE logTime<'".$tDel_time."'") or die(mysql_error());
// Eerst het ipnummer van de bezoeker of lid
$iIP = $_SERVER['REMOTE_ADDR'];
//Voltooi de query
$query="REPLACE INTO online (userIP,memberID,location) VALUES ('".$iIP."', '".$_SESSION['id']."', '".$_SERVER['REQUEST_URI']."')";
// Voer de query uit
$result=mysql_query($query) or die (mysql_error());
}
?>
<?php function online() { // Voer verschoon-query uit // Eerst het ipnummer van de bezoeker of lid $iIP = $_SERVER['REMOTE_ADDR']; //Voltooi de query $query="REPLACE INTO online (userIP,memberID,location) VALUES ('".$iIP."', '".$_SESSION['id']."', '".$_SERVER['REQUEST_URI']."')"; // Voer de query uit } ?>
CREATE TABLE `online` (
`userIP` varchar(15) NOT NULL default '',
`memberID` smallint(6) unsigned default NULL,
`location` tinytext,
`logTime` timestamp(14) NOT NULL,
PRIMARY KEY (`userIP`)
) TYPE=MyISAM;
CREATE TABLE `online` ( `userIP` varchar(15) NOT NULL default '', `memberID` smallint(6) unsigned default NULL, `location` tinytext, `logTime` timestamp(14) NOT NULL, ) TYPE=MyISAM;
Download code (.txt)
|
|
Stemmen |
Niet ingelogd. |
|