Bezoekersteller / Aantal mensen op de site!?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Edwin Schoonbeek

Edwin Schoonbeek

02/01/2006 17:31:00
Quote Anchor link
Beste PHP mensen,

Graag zou ik jullie willen vragen om mij te helpen, ik zoek een bezoekersteller die aan kan geven hoeveel unieke bezoekers er op de site zijn geweest en hoeveel bezoekers er op de website aanwezig zijn... wie wil me helpen met deze uitdaging? op Google kan ik niks vinden.... in ieder geval niet naar mijn wensen...

PHP & MySQL aanwezig op de server....

Mvg. E.Schoonbeek
 
PHP hulp

PHP hulp

27/11/2024 15:20:33
 
Zim Zim

Zim Zim

02/01/2006 17:35:00
Quote Anchor link
Aan een deel kan je vertellen hoe het moet (of ik het zou doen). Kijken van unieke bezoekers.

je zou de pagina bijvoorbeeld: count.php kunnen noemen, en die include je dan in je hoofdpagina (als je alleen daar wilt tellen). Ik vraag dan naar het ip (voor de unieke bezoekers en zet de tijd neer. (ik zet de tijd appart in de database omdat het makkelijker is om te sorteren op dag enz.

Als je al die gegevens hebt moet je die naar je MySQL database sturen....

voorbeeld is dit:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?

$ip
= $_SERVER['REMOTE_ADDR'];
$jaar = date("Y");
$maand = date("m");
$dag = date("d");
$tijd = date("H:i:s");


$sql_query = "INSERT INTO sebdesignstats (jaar,maand,dag,tijd,ip,adres) VALUES ('".$jaar."','".$maand."','".$dag."','".$tijd."','".$ip."')";
$result = mysql_query($sql_query) or die(mysql_error());
?>

*noot: je moet dan zelf nog een database tabele maken en verbinding maken met de database

;)
Zim
Gewijzigd op 02/01/2006 17:36:00 door Zim Zim
 
Edwin Schoonbeek

Edwin Schoonbeek

02/01/2006 17:40:00
Quote Anchor link
Wie kan me daar mee helpen?
 
Arjan Kapteijn

Arjan Kapteijn

02/01/2006 17:46:00
Quote Anchor link
Makkelijker is om een sessie te maken, dan krijg je niet dat als ik 10 paginas op jou site bezoek jij denkt dat er 10 bezoekers zijn...

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
session_start();
if (!isset($_SESSION['tellertje'])) {
   $_SESSION['tellertje'] = 1;
   $i++
}

?>


$i++ staat in dit geval voor het ophogen van een getal. Maar daar kan je natuurlijk ook een query maken die gegevns in een database propt. Of een simpel systeempje wat enkel een nummertje ophoogt in een txt bestandje. het is helemaal afhankelijk van jou wensen, en welke gegevens je op wilt slaan.
 
Edwin Schoonbeek

Edwin Schoonbeek

02/01/2006 17:50:00
Quote Anchor link
Het gaat mij erom dat het om "unieke" bezoekers gaat... dus dat er bijvoorbeeld onderaan de site een regel komt te staan...

(aantal unieke bezoekers ....)

En dat het IP adres opgeslagen zal worden bij het bezoeken van de pagina....

Kan dat?
 
Arjan Kapteijn

Arjan Kapteijn

02/01/2006 17:59:00
Quote Anchor link
Ik kan een boeing 747 met mijn laptop en php besturen als het moet.

Everything is possible, there are no boundaries, no rules no borders. They only exist in your own mind. Bend a spoon...
 
Lissy Pixel

Lissy Pixel

02/01/2006 18:13:00
Quote Anchor link
Dit is de functie:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<?php
function OnLine()
{

$time=time()+180;
$sql="select * from online where ip='".$_SERVER['REMOTE_ADDR']."'";
$res=mysql_query($sql);
$stats=mysql_num_rows($res);
if($stats=="0")
{

mysql_query("INSERT Into online (naam,ip,waar,tijd) VALUES ('$naam','".$_SERVER['REMOTE_ADDR']."','".$_SERVER['PHP_SELF']."','$time')");
}

else
{
mysql_query("UPDATE online SET waar='".$_SERVER['PHP_SELF']."',tijd='$time' WHERE ip = '".$_SERVER['REMOTE_ADDR']."'");
}

$sql="select * from online";
$res=mysql_query($sql);
$online=mysql_num_rows($res);

$now=time();
mysql_query("DELETE FROM online WHERE tijd < $now");

echo "<table align=\"center\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" class=smallnavigation>";    
echo "<tr><td align=\"center\"><b>Online: ".$online."</b></tr></td>";
echo "</table>";
}

?>


Je roept hem zo aan:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
OnLine();
?>


Hier de tabel online:

--
-- Tabel structuur voor tabel `online`
--

CREATE TABLE `online` (
`naam` varchar(20) NOT NULL default '',
`ip` varchar(20) NOT NULL default '',
`waar` varchar(40) NOT NULL default '',
`tijd` varchar(30) NOT NULL default ''
) TYPE=MyISAM;

Dit script komt overigens van hier uit de bibliotheek en meer draaiende scripts kun je ook vinden voor de startende PHP'er bij mij op de site ;-)
 
Edwin Schoonbeek

Edwin Schoonbeek

02/01/2006 18:31:00
Quote Anchor link
bedankt!
 

02/01/2006 18:48:00
Quote Anchor link
ERROR: Onbekende Punctuatie String @ 1
STR:

SQL-query :




MySQL retourneerde:


#1064 - You have an error in your SQL syntax near '
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
function OnLine()
{

$time=time()+180' at line 1
 

02/01/2006 18:49:00
Quote Anchor link
probleem al opgelost :-)
 

02/01/2006 18:53:00
Quote Anchor link
Waar moet ik nou mijn database lijn in zetten?
(MySQL regel) gb-online_nl_-_online
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.