Avatar billede -padde- Nybegynder
01. september 2004 - 10:32 Der er 9 kommentarer og
1 løsning

IP snupning

Heysa, vil gerne have hvis det var sådan at alle de ip'er der kom ind på min side blev smidt ind i en database...skal nok bruge $REMOTE_ADDR - men hvordan er jeg ikke klar over...noget lign (til datebasen)

mysql_query($sql="INSERT INTO log (ip) values ('$REMOTE_ADDR')") or die (mysql_error(). 'SQL: ' .$sql);

Men hvordan snupper den hver ip ?
Avatar billede detox Nybegynder
01. september 2004 - 10:44 #1
Det kan godt give problemer med nyere version af php, så tilføj evt. dette i starten af scriptet:

    if(phpversion() >= "4.2.0") {
      extract($_SERVER);
    }

Du kunne jo lige så godt logge tidspunktet osse:

mysql_query($sql = "INSERT INTO log (ip, tid) values ('$REMOTE_ADDR', NOW())") or die (mysql_error(). 'SQL: ' .$sql);
Avatar billede dennismp Nybegynder
01. september 2004 - 10:51 #2
eller bare bruger $REMOTE_ADDR = $_SERVER['REMOTE_ADDR'];
Avatar billede -padde- Nybegynder
01. september 2004 - 10:52 #3
dvs at log.php ser sådan her ud :
<?

mysql_connect("localhost","bruger","kode");
mysql_select_db('database');

mysql_query($sql = "INSERT INTO log (ip, tid) values ('$REMOTE_ADDR', now())") or die (mysql_error(). 'SQL: ' .$sql);
    if(phpversion() >= "4.2.0") {
      extract($_SERVER);
    }
?>


Altså filen her skal KUN smide ind i min database :) jeg kan godt finde ud af at trække det ud igen selv :)
Avatar billede dennismp Nybegynder
01. september 2004 - 10:59 #4
Du skal gøre det FØR du fyre din sql af sted :-) så byt om på den if og din mysql_query - så burde det virke..
Avatar billede -padde- Nybegynder
01. september 2004 - 11:09 #5
lige en lille ekstra en, hvordan laver jeg sådan at der osse kommer et lille id ? Sådan når jeg lavet mit udtræk at jeg kan skrive
#
1
2
3
Osv...
Avatar billede dennismp Nybegynder
01. september 2004 - 11:14 #6
hvis du mener, at du gerne vil have et id på rækkerne, så tilføjer du bare et id-felt af typen integer og sætter den til at være auto_increment, not null og primary key.. Så sørger den selv for at tælle op (du behøver ikke at rette din insert).. Hvis det bare er visningen du gerne vil hav numre på så:

$i = 0;
while($row = mysql_fetch_... ) {
  $i++;
  print $i;
  ..
}

btw; dette er detox' points så giv ham dem :)
Avatar billede -padde- Nybegynder
01. september 2004 - 11:20 #7
fandt selv ud af det ;) hehe detox, smid svar...men hurtigt :P skal have pause ;P
Avatar billede detox Nybegynder
01. september 2004 - 11:24 #8
Ok, kommer straks.
Avatar billede -padde- Nybegynder
01. september 2004 - 11:27 #9
vil lige høre, når det så er de kommer ind på min index.php - så tæller det jo ikke...så skal jeg vel bare skrive require_once('log.php');

ikke ?
Avatar billede detox Nybegynder
01. september 2004 - 11:32 #10
Jo, det ser rigtigt ud.
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