Avatar billede riverhorse Nybegynder
20. juni 2004 - 11:02 Der er 2 kommentarer og
1 løsning

Vil gerne se hvor folk kommer fra

Jeg vil gerne kunne se hvor folk kommer fra når de loader index.php, jeg har sat følgene kode ind:

$strSql = 'INSERT INTO hvorfra (ip, host, url) values("' . $_SERVER['REMOTE_ADDR'] . '","' . $_SERVER['REMOTE_HOST'] .'","' . $_SERVER['HTTP_REFERER'] .'")';
    mysql_query($strSql);

Men den tager jo ret og kravl, kunne man ikke begrænse det sådan at folk kun 1 gang får lov at skrive i data basen, feks. via ip eller link ?

Kan ikke lige overskue hvordan man gør det så lidt hjælp ville være dejligt...

M.v.H.
Riverhorse
Avatar billede fangel Nybegynder
20. juni 2004 - 11:14 #1
fx noget i dur med:
$ip = $_SERVER['REMOTE_ADDR'];
$host = $_SERVER['REMOTE_HOST'];
$referer = $_SERVER['HTTP_REFERER'];
$query = mysql_query("SELECT ip FROM hvorfra WHERE ip='$ip'")or die(mysql_error());
if(mysql_num_rows($query) == 0){ // der findes ingen med den IP
  mysql_query("INSERT INTO hvorfra (ip, host, url) VALUES ('$ip', '$host', '$referer')")or die(mysql_error());
}

Morten
Avatar billede riverhorse Nybegynder
20. juni 2004 - 11:27 #2
Yup det virker fint :D så kan du måske osse fortælle mig hvorfor $_SERVER['HTTP_REFERER'] og $_SERVER['REMOTE_HOST'] ikke altid virker og $_SERVER['REMOTE_ADDR'] altid virker ?

Riverhorse
Avatar billede fangel Nybegynder
20. juni 2004 - 11:34 #3
1) REFERER er valgfri for browseren at sende, og den kommer kun hvis man har fulgt et link - nogle firewalls fjerne denne header for at beskydte brugeren
2) HOST kan kun findes ved bagvendt-navneopslag - hvilket ikke altid kan laves...

Morten
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester