Lid |
|
Ik vond in de scriptlib een mooi script met tijdcontrole voor het aantal bezoekers van een site te tellen, iets wat sommige mensen erg waarderen. Probleem is dat ik een beetje in de war zit hoe ik het volgende juist moet aanpakken...
Als u als bezoeker op site x.issingle.be komt, gaat de teller van lid x met één omhoog. Duwt u op refresh, blijft deze op 1 staan (gedurende 5 minuten). Echter gaat u binnen die 5 minuten naar site y.issingle.be (lid y dus), moet lid y zijn teller wel met één verhoogd worden. Indien hij na het bezoek van lid y terug naar lid x gaat uiteraard weer niet.
Te gebruiken script (uit script lib van hier)
<?php
mysql_select_db("database_naam",mysql_connect("database_adres","database_gebruikersnaam","database_wachtwoord")) or die (mysql_error());
$bezoekers = mysql_query("SELECT * FROM bezoekers WHERE ip = '".$_SERVER['REMOTE_ADDR']."'") or die (mysql_error());
$tijd = time() - 100; // Wijzig met het laatste getal (standaart 100) de preciezie van het script
if (mysql_num_rows($bezoekers) <= 0)
{
mysql_query("INSERT INTO bezoekers (id,ip,tijd) VALUES ('','".$_SERVER['REMOTE_ADDR']."','".time()."')") or die (mysql_error());
}
else
{
mysql_query("UPDATE bezoekers SET tijd = '".time()."' WHERE ip = '".$_SERVER['REMOTE_ADDR']."'") or die (mysql_error());
}
mysql_query("DELETE FROM bezoekers WHERE ip = '".$_SERVER['REMOTE_ADDR']."' AND tijd <= '".$tijd."'") or die (mysql_error());
$bezoekers = mysql_query("SELECT * FROM bezoekers") or die (mysql_error());
$aantal = mysql_num_rows($bezoekers) or die (mysql_error());
echo "Bezoekers: ".$aantal;
?>
<?php $tijd = time() - 100; // Wijzig met het laatste getal (standaart 100) de preciezie van het script { } else { } mysql_query("DELETE FROM bezoekers WHERE ip = '".$_SERVER['REMOTE_ADDR']."' AND tijd <= '".$tijd."'") or die (mysql_error()); echo "Bezoekers: ".$aantal; ?>
Mijn MySQL tabellen:
--
-- Tabel structuur voor tabel `blog`
--
CREATE TABLE `blog` (
`gebruikerid` varchar(10) NOT NULL default '',
`datum` date NOT NULL default '0000-00-00',
`titel` varchar(25) NOT NULL default '',
`tekst` text NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
-- --------------------------------------------------------
--
-- Tabel structuur voor tabel `gastenboek`
--
CREATE TABLE `gastenboek` (
`ontvangerid` varchar(150) NOT NULL default '',
`verzenderid` varchar(150) NOT NULL default '',
`datum` date NOT NULL default '0000-00-00',
`bericht` text NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
-- --------------------------------------------------------
--
-- Tabel structuur voor tabel `leden`
--
CREATE TABLE `leden` (
`id` int(11) NOT NULL auto_increment,
`gebruikersnaam` varchar(50) NOT NULL default '',
`naam` varchar(100) NOT NULL default '',
`voornaam` varchar(100) NOT NULL default '',
`email` varchar(100) NOT NULL default '',
`paswoord` varchar(100) NOT NULL default '',
`geboorte_dag` char(2) NOT NULL default '',
`geboorte_maand` char(2) NOT NULL default '',
`geboorte_jaar` varchar(4) NOT NULL default '',
`geaardheid` varchar(6) NOT NULL default '',
`provincie` varchar(6) NOT NULL default '',
`geslacht` char(1) NOT NULL default '',
`single` char(1) NOT NULL default '',
`uitleg` text NOT NULL,
`views` tinyint(10) NOT NULL default '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=19 ;
-- --------------------------------------------------------
--
-- Tabel structuur voor tabel `pm`
--
CREATE TABLE `pm` (
`verzenderid` varchar(10) NOT NULL default '',
`ontvangerid` varchar(10) NOT NULL default '',
`bericht` text NOT NULL,
`datum` date NOT NULL default '0000-00-00'
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
-- -- Tabel structuur voor tabel `blog` -- CREATE TABLE `blog` ( `gebruikerid` varchar(10) NOT NULL default '', `datum` date NOT NULL default '0000-00-00', `titel` varchar(25) NOT NULL default '', `tekst` text NOT NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -------------------------------------------------------- -- -- Tabel structuur voor tabel `gastenboek` -- CREATE TABLE `gastenboek` ( `ontvangerid` varchar(150) NOT NULL default '', `verzenderid` varchar(150) NOT NULL default '', `datum` date NOT NULL default '0000-00-00', `bericht` text NOT NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -------------------------------------------------------- -- -- Tabel structuur voor tabel `leden` -- CREATE TABLE `leden` ( `id` int(11) NOT NULL auto_increment, `gebruikersnaam` varchar(50) NOT NULL default '', `naam` varchar(100) NOT NULL default '', `voornaam` varchar(100) NOT NULL default '', `email` varchar(100) NOT NULL default '', `paswoord` varchar(100) NOT NULL default '', `geboorte_dag` char(2) NOT NULL default '', `geboorte_maand` char(2) NOT NULL default '', `geboorte_jaar` varchar(4) NOT NULL default '', `geaardheid` varchar(6) NOT NULL default '', `provincie` varchar(6) NOT NULL default '', `geslacht` char(1) NOT NULL default '', `single` char(1) NOT NULL default '', `uitleg` text NOT NULL, `views` tinyint(10) NOT NULL default '0', ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=19 ; -- -------------------------------------------------------- -- -- Tabel structuur voor tabel `pm` -- CREATE TABLE `pm` ( `verzenderid` varchar(10) NOT NULL default '', `ontvangerid` varchar(10) NOT NULL default '', `bericht` text NOT NULL, `datum` date NOT NULL default '0000-00-00') ENGINE=MyISAM DEFAULT CHARSET=latin1;
|