Gå til innhold

Anbefalte innlegg

Skrevet

Hei jeg lurte på om hvordan jeg kan lage / finne et statistikk script.

Hvor mange som har besøkt i dag.

Total Besøkte.

osv.. har sett et slik script på flere sider.

 

Ps! Har lett på hotscripts men der finnes det bare avanserte script trenger bare en enkel en,

Videoannonse
Annonse
Skrevet (endret)

Hvordan vil du den skal fungere og bruker du en sql database som MySQL?

I så fall kan jeg hjelpe deg å sette det opp. Bare si litt om hvordan det skal fungere.

 

Vil du bare telle antall besøkende på sidene, og kunne gå tilbake å se hvor mange besøkende du har hatt totalt og på de forskjellige dagene?

Eller skal det være mer avansert, å skille mellom unike besøkende, slik at en besøkende kun telles en gang?

 

Hvis du vil prøve helt selv finnes det mange tutorials på hotscripts.com - http://www.hotscripts.com/PHP/Tips_and_Tut...ters/index.html

Endret av ????????
Skrevet
Hvordan vil du den skal fungere og bruker du en sql database som MySQL?

I så fall kan jeg hjelpe deg å sette det opp. Bare si litt om hvordan det skal fungere.

 

Vil du bare telle antall besøkende på sidene, og kunne gå tilbake å se hvor mange besøkende du har hatt totalt og på de forskjellige dagene?

Eller skal det være mer avansert, å skille mellom unike besøkende, slik at en besøkende kun telles en gang?

Hmm ja jeg har mysql.

Vel det er greit med unike teller.

Det eneste jeg tenkte å ha var antall i dag og total besøkte.

Ip som vises.

 

Tror jeg det holder for øyeblikket.

 

Er vel bare å videre utvikle det senere hvis behov.

Skrevet

Her er et MEGET enkelt eksempel:

 

Lag følgende tabell:

 

CREATE TABLE `teller` (
 `id` int(11) NOT NULL auto_increment,
 `dato` timestamp(14) NOT NULL,
 `ip` varchar(255) NOT NULL default '',
 PRIMARY KEY  (`id`)
) TYPE=MyISAM;

 

 

Her er scriptet som legger til en bruker i databasen:

<?php
session_start();
if(!isset($_SESSION['teller'])){

 //database tilkoblingsinfo
 $db_host = "localhost eller adresse til mysql server";
 $db_user = "passord";
 $db_pass = "brukernavn";
 $da_navn = "Navnet på databasen"

 //koble til databasen
 $database = mysql_connect($db_host, $db_user, $db_pass);
 mysql_select_db($da_navn, $database);
 
 //sette inn data i mysql
 $query = "INSERT INTO teller (ip)VALUES('".$_SERVER['REMOTE_ADDR']."')";
 $result = mysql_query($query);
 
 //opprette en session slik at brukeren ikke registreres flere ganger
 $_SESSION['teller'] = "1";

 mysql_close($database); //det er ikke nødvendig å ta med mysql_close!
}
?>

Scriptet er meget enkelt. Dersom det ikke finnes noen session på brukeren legges han til i databasen.

 

 

Her er admin scriptet:

<?php

//database tilkoblingsinfo
$db_host = "localhost eller adresse til mysql server";
$db_user = "passord";
$db_pass = "brukernavn";
$da_navn = "Navnet på databasen"

//koble til databasen
$database = mysql_connect($db_host, $db_user, $db_pass);
mysql_select_db($da_navn, $database);

//vise totalt antall besøkende
$query = "SELECT COUNT(id) FROM teller";
$result = mysql_query($query);
$rad = mysql_fetch_array($result);
echo "Totalt antall besøkende: ".$rad[0]."<br><br>";

//vise totalt antall besøkende
$query = "SELECT COUNT(id) FROM teller WHERE TO_DAYS(NOW()) = TO_DAYS(dato)";
$result = mysql_query($query);
$rad = mysql_fetch_array($result);
echo "Antall besøkende i dag: ".$rad[0]."<br><br>";


//vise info om de 10 siste besøkende
$query = "SELECT id, DATE_FORMAT(dato, '%d-%m-%y'), id FROM teller ORDER BY id DESC LIMIT 10";
$result = mysql_query($query);
while($rad = mysql_fetch_array($result)){
 echo "<b>ID#</b> ".$rad[0]." - <b>Dato:</b> ".$rad[1]." <b>IP:</b> ".$rad[2];
 echo "<hr>";
}
echo $totalt;

echo mysql_error();

?>

 

Dette er et lite eksempel på en meget enkel teller. Legg til de funksjonene du ønsker.

 

Håper dette hjelper deg å lage telleren din!

Skrevet

Hei jeg fikk ikke det tiul å funke.

Jeg forandret dette bare.

 

$connection = mysql_connect("$hostname" , "$user" , "$pass");
$db = mysql_select_db($dbase , $connection); 

 

Fordi jeg fikk denne feilmelding med når jeg fyllte opp feltene.

 

Parse error: parse error, unexpected T_VARIABLE in /hsphere/local/home/count.php on line 12

 

Her er koden på linje.

 

 $database = mysql_connect($db_host, $db_user, $db_pass);

Skrevet

når det står om en feilmelding på linje 12, ligger sansynligvis feilen på linja før.

 

echo "jeg er smart" Her mangler det ;

echo "hva skjer a?"; Feilen oppstår ikke før echo ", derfor tror php at feilen ligger linje 2 og ikke linje 1, hvor feilen egentlig er.

Skrevet
Feilen ligger i

 

$da_navn = "Navnet på databasen"

 

det skal stå

 

$da_navn = "Navnet på databasen";

dumme meg som overså det takk for hjelpen. :D

Skrevet
Feilen ligger i

 

$da_navn = "Navnet på databasen"

 

det skal stå

 

$da_navn = "Navnet på databasen";

dumme meg som overså det takk for hjelpen. :D

Vel nå skriver den ikke i databasen.

Skrevet

Glem ikke at scriptet bygger på en session. Dersom du har vært på siden en gang skriver den ikke til databasen før du starter et nytt vindu.

 

Lukk vinduet og endre denne linjen:

//opprette en session slik at brukeren ikke registreres flere ganger

$_SESSION['teller'] = "1";

 

til:

 

//opprette en session slik at brukeren ikke registreres flere ganger

//$_SESSION['teller'] = "1";

Skrevet
Glem ikke at scriptet bygger på en session. Dersom du har vært på siden en gang skriver den ikke til databasen før du starter et nytt vindu.

 

Lukk vinduet og endre denne linjen:

//opprette en session slik at brukeren ikke registreres flere ganger

$_SESSION['teller'] = "1";

 

til:

 

//opprette en session slik at brukeren ikke registreres flere ganger

//$_SESSION['teller'] = "1";

Fungerer supert.

 

Tusen takk :D:thumbs: :thumbs:

  • 4 måneder senere...
Skrevet

Istedenfor å lage ny tråd, poster jeg heller her.

 

????????, på den "meget" enkle tellern din, hvordan lager jeg en tabbel? Hvor skriver jeg den koden du gir? Har aldri vært borti sql :blush:

 

Men blir det slik at hvis brukeren ikke støtter cookiem, vil han telles hele tiden?

Skrevet

Jeg bruker awstats. Vet ikke om det er gratis, det fulgte med hosten min :)

Den er forøvrig veldig, veldig bra. Statistikk for det aller meste. Båndbredde, hits, unique hits per time, dag, mnd. You name it egentlig.

Skrevet
Istedenfor å lage ny tråd, poster jeg heller her.

 

????????, på den "meget" enkle tellern din, hvordan lager jeg en tabbel? Hvor skriver jeg den koden du gir? Har aldri vært borti sql :blush:

 

Men blir det slik at hvis brukeren ikke støtter cookiem, vil han telles hele tiden?

Hvis du har tilgang til phpmyadmin, kan dette gjøres meget lett der. Kopier hva han skrev (CREATE table...) inn i en fil, som du kaller ettellerannet.sql. Denne kan du importere inn i phpmyadmin.

 

Btw: Det er ikke en cookie, men en session. Sessions er noe du ikke kan skru av, men den har ikke de fordelene en cookie har når det gjelder tellere (du kan ikke sette tidsintervaller o.l.)

Skrevet (endret)

Det er vel ingen som har phpmyadmin som kunne tenkte seg å lage denne sql-filen? Hadde vært snilt :)

 

Edit: Jeg trenger ikke et slikt skript allikavel.

Endret av Jonas
Skrevet
Istedenfor å lage ny tråd, poster jeg heller her.

 

????????, på den "meget" enkle tellern din, hvordan lager jeg en tabbel? Hvor skriver jeg den koden du gir? Har aldri vært borti sql :blush:

 

Men blir det slik at hvis brukeren ikke støtter cookiem, vil han telles hele tiden?

Hvis du har tilgang til phpmyadmin, kan dette gjøres meget lett der. Kopier hva han skrev (CREATE table...) inn i en fil, som du kaller ettellerannet.sql. Denne kan du importere inn i phpmyadmin.

 

Btw: Det er ikke en cookie, men en session. Sessions er noe du ikke kan skru av, men den har ikke de fordelene en cookie har når det gjelder tellere (du kan ikke sette tidsintervaller o.l.)

Jo, en session er en kake. Forskjellen er at informasjonen blir lagret på serveren i stedet for hos brukeren. Dette sikrer scriptene mot manuplasjon av data. Man kan ved hjelp av sessions lagre "hemmelig" data mer sikkert siden det ligger på serveren og man slipper da å kryptere dataen som ellers ville ligget på harddisken til brukeren. Likevel velger mange paranoide programmerere (inkludert meg) å likevel kryptere det meste av dataen som ligger i sessionfilene. Dette fordi jeg selv har erfart hvor enkelt uønskede brukere kan få adgang til sessionmappen og derfra lese "hemmelig" informasjon.

 

Mange velger å droppe sessions og heller bruke kaker sammen med MySQL. Prinsippet blir det samme, man lagrer alt lokalt (men med kaker i en SQL-database siden mange mener dette er sikrere på public hoster) og gir brukeren en unik id som han lagrer som en kake (på akkuratt samme måte som med sessions).

 

Når du sier at man "ikke kan skru det av" så tenker du sikkert på sessioniden som ofte ligger i urlene til de som har slått av kaker i nettleseren sin. Faktisk er dette slått av som default pga diverse sikkerhetsrisikoer. Du har sikkert hørt om session-hijacking og liknede. Uansett, selv om man bruker trans_sid burde det ikke for en nettleser med en plugin være umulig å "slå av" denne IDen. Det er jo tross alt bare snakk om å filtrere bort litt av requeststringen (PHPSESSID=).

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...