hier het script + uitleg wat alles doet
deze codes die hier bij staan kan je gebruiken als voorbeeld
het is dus noodzaakelijk dat je wel je tables aan past in je database
als je geen tables hebt maak ze aan
en gebruik de volgende tables
Code (php)
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
voor OnlineGasten
CREATE TABLE `OnlineGasten` (
`id` int(11) NOT NULL auto_increment,
`naam` varchar(100) default NULL,
`ip` varchar(100) default NULL,
`gekomen` varchar(100) NOT NULL default '',
`last_online` datetime NOT NULL default '0000-00-00 00:00:00',
`online` varchar(100) NOT NULL default '',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=0 ;
CREATE TABLE `OnlineGasten` (
`id` int(11) NOT NULL auto_increment,
`naam` varchar(100) default NULL,
`ip` varchar(100) default NULL,
`gekomen` varchar(100) NOT NULL default '',
`last_online` datetime NOT NULL default '0000-00-00 00:00:00',
`online` varchar(100) NOT NULL default '',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=0 ;
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
voor members
CREATE TABLE `members` (
`memberid` int(11) unsigned NOT NULL auto_increment,
`gebruikersnaam` varchar(100) default '0',
`ip` varchar(20) NOT NULL default '',
`status` varchar(100) NOT NULL default '',
`style` varchar(100) NOT NULL default '',
`avator` varchar(100) NOT NULL default '',
`wachtwoord` varchar(100) default '0',
`naam` varchar(250) default '0',
`email` varchar(100) default '0',
`toonemail` text NOT NULL,
`homepage` varchar(100) default '0',
`geboortedatum` varchar(10) default '0',
`geboortejaar` int(100) NOT NULL default '0',
`woonplaats` varchar(75) default '0',
`geslacht` varchar(12) default '0',
`relatie` int(1) default '0',
`geactiveerd` varchar(12) default '0',
`acode` varchar(100) NOT NULL default '',
`pm` char(1) default '0',
`totaalingelogt` int(100) NOT NULL default '0',
`gestemt` varchar(10) NOT NULL default '',
`gestemtop` varchar(100) NOT NULL default '',
`last_online` datetime NOT NULL default '0000-00-00 00:00:00',
`online` varchar(100) NOT NULL default '',
`blockpm` blob,
`geregtop` datetime NOT NULL default '0000-00-00 00:00:00',
`lastpage` text NOT NULL,
`totaalhits` int(100) NOT NULL default '0',
PRIMARY KEY (`memberid`),
KEY `totaalingelogt` (`totaalingelogt`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=0 ;
CREATE TABLE `members` (
`memberid` int(11) unsigned NOT NULL auto_increment,
`gebruikersnaam` varchar(100) default '0',
`ip` varchar(20) NOT NULL default '',
`status` varchar(100) NOT NULL default '',
`style` varchar(100) NOT NULL default '',
`avator` varchar(100) NOT NULL default '',
`wachtwoord` varchar(100) default '0',
`naam` varchar(250) default '0',
`email` varchar(100) default '0',
`toonemail` text NOT NULL,
`homepage` varchar(100) default '0',
`geboortedatum` varchar(10) default '0',
`geboortejaar` int(100) NOT NULL default '0',
`woonplaats` varchar(75) default '0',
`geslacht` varchar(12) default '0',
`relatie` int(1) default '0',
`geactiveerd` varchar(12) default '0',
`acode` varchar(100) NOT NULL default '',
`pm` char(1) default '0',
`totaalingelogt` int(100) NOT NULL default '0',
`gestemt` varchar(10) NOT NULL default '',
`gestemtop` varchar(100) NOT NULL default '',
`last_online` datetime NOT NULL default '0000-00-00 00:00:00',
`online` varchar(100) NOT NULL default '',
`blockpm` blob,
`geregtop` datetime NOT NULL default '0000-00-00 00:00:00',
`lastpage` text NOT NULL,
`totaalhits` int(100) NOT NULL default '0',
PRIMARY KEY (`memberid`),
KEY `totaalingelogt` (`totaalingelogt`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=0 ;
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
config.php
//het bestand om te connecten naar een database en zowel de config van het update systeem
<?php
$error = "1"; //als je de errors wilt zien 0 is uit 1 is aan
if($error == '1') { // de check if $error = 1 of 0
ini_set('display_errors', 1); //raporteer allegegevens
error_reporting(E_ALL); meld de error
}
$ip = $_SERVER['REMOTE_ADDR']; // dit is het ip adres van de gebruiker
$mysql_host = "localhost"; // database host vaak word deze localhost
$mysql_user = "xxxxxxxxx"; // je gebruikersnaam van je database
$mysql_pass = "xxxxxxxxx"; // je wachtwoord van je database
$mysql_db = "xxxxxxxxx"; // je database naam
$db = mysql_connect( $mysql_host , $mysql_user , $mysql_pass ) or die(mysql_error()); // hier gaan we connecten naar de database
if(!mysql_select_db($mysql_db)); // hier kijken we of de database gevonden is
$timetodelete = 15; // verander dit getal hou hier rekening mee dat het in minuten word getelt
?>
//het bestand om te connecten naar een database en zowel de config van het update systeem
<?php
$error = "1"; //als je de errors wilt zien 0 is uit 1 is aan
if($error == '1') { // de check if $error = 1 of 0
ini_set('display_errors', 1); //raporteer allegegevens
error_reporting(E_ALL); meld de error
}
$ip = $_SERVER['REMOTE_ADDR']; // dit is het ip adres van de gebruiker
$mysql_host = "localhost"; // database host vaak word deze localhost
$mysql_user = "xxxxxxxxx"; // je gebruikersnaam van je database
$mysql_pass = "xxxxxxxxx"; // je wachtwoord van je database
$mysql_db = "xxxxxxxxx"; // je database naam
$db = mysql_connect( $mysql_host , $mysql_user , $mysql_pass ) or die(mysql_error()); // hier gaan we connecten naar de database
if(!mysql_select_db($mysql_db)); // hier kijken we of de database gevonden is
$timetodelete = 15; // verander dit getal hou hier rekening mee dat het in minuten word getelt
?>
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
index.php
met deze code leeg je en update je de database
zowel van de members als online gasten
<?php
include("config.php"); // connecten naar database
//Update members table zet online status op 0 als ze langer dan 15min geen hits hebben gegeven (minuten zijn instelbaar)
//De Update: we gaan kijken of de member binnen een x aantal min nog actief is de $timetodelete staat in config.php
//zijn de members langer als $timetodelete niet actief geweest dan update we online status
$sql = "UPDATE members SET online=0 WHERE DATE_SUB(NOW(),INTERVAL $timetodelete MINUTE) >= last_online AND online=1";
$query = mysql_query($sql);
//Delete OnlineGasten als ze langer dan 15min geen hits hebben gegeven (minuten zijn instelbaar)
//De Delete: we gaan kijken of de Gasten binnen een x aantal min nog actief is de $timetodelete staat in config.php
//zijn de gasten langer als $timetodelete niet actief geweest dan delete we alle gebruikers die over het aangegeven totaal $timetodelete niet actief waren
$sql = "DELETE FROM OnlineGasten WHERE DATE_SUB(NOW(),INTERVAL $timetodelete MINUTE) >= last_online AND online=1";
$query = mysql_query($sql);
?>
met deze code leeg je en update je de database
zowel van de members als online gasten
<?php
include("config.php"); // connecten naar database
//Update members table zet online status op 0 als ze langer dan 15min geen hits hebben gegeven (minuten zijn instelbaar)
//De Update: we gaan kijken of de member binnen een x aantal min nog actief is de $timetodelete staat in config.php
//zijn de members langer als $timetodelete niet actief geweest dan update we online status
$sql = "UPDATE members SET online=0 WHERE DATE_SUB(NOW(),INTERVAL $timetodelete MINUTE) >= last_online AND online=1";
$query = mysql_query($sql);
//Delete OnlineGasten als ze langer dan 15min geen hits hebben gegeven (minuten zijn instelbaar)
//De Delete: we gaan kijken of de Gasten binnen een x aantal min nog actief is de $timetodelete staat in config.php
//zijn de gasten langer als $timetodelete niet actief geweest dan delete we alle gebruikers die over het aangegeven totaal $timetodelete niet actief waren
$sql = "DELETE FROM OnlineGasten WHERE DATE_SUB(NOW(),INTERVAL $timetodelete MINUTE) >= last_online AND online=1";
$query = mysql_query($sql);
?>
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
update.php
deze code plaats je ergens op je website
ik zelf heb hem in 1 van me blocken staan zo dat ie altijd gecheckt word
<?php
include("config.php"); // connecten naar database
if(isset($_SESSION['GastID'])) { // hier kijken we of de Gast nog online is
$sql = "UPDATE OnlineGasten SET last_online='".date("Y-m-d H:i:s")."' WHERE id='" . $_SESSION['GastID'] . "'"; //hier updateen we de Gast omdat hij nog actief is
$query = mysql_query($sql); // hier voeren we de query uit
}
if(isset($_SESSION['user'])) { // hier kijken we of de Member nog online is
$sql = "UPDATE members SET last_online='".date("Y-m-d H:i:s")."' WHERE gebruikersnaam='".$_SESSION['user']."'"; //hier update we de member omdat hij nog actief is
$query = mysql_query($sql); // hier voeren we de query uit
}
?>
deze code plaats je ergens op je website
ik zelf heb hem in 1 van me blocken staan zo dat ie altijd gecheckt word
<?php
include("config.php"); // connecten naar database
if(isset($_SESSION['GastID'])) { // hier kijken we of de Gast nog online is
$sql = "UPDATE OnlineGasten SET last_online='".date("Y-m-d H:i:s")."' WHERE id='" . $_SESSION['GastID'] . "'"; //hier updateen we de Gast omdat hij nog actief is
$query = mysql_query($sql); // hier voeren we de query uit
}
if(isset($_SESSION['user'])) { // hier kijken we of de Member nog online is
$sql = "UPDATE members SET last_online='".date("Y-m-d H:i:s")."' WHERE gebruikersnaam='".$_SESSION['user']."'"; //hier update we de member omdat hij nog actief is
$query = mysql_query($sql); // hier voeren we de query uit
}
?>