Gå til innhold

Hvordan lage "din ip" greie?


Anbefalte innlegg

Jeg holder på med en side nå, og tenkte at det hadde sett litt neat ut å vise ip'n til folk som kommer på besøk.

 

Hvordan får jeg til dette? Er det noe jeg kan laste ned selv? Koding i php har jeg aldri vært borti :roll:

 

hadde også vært kult å vise antall unike besøkende, og besøkende totalt ogsånt.

 

Er kjempe takknemlig hvis noen kan hjelpe!

Lenke til kommentar
Videoannonse
Annonse

Jeg lurer på om dette kanskje kan funke:

 

I html dokumentet ditt, putt dette, hvor du vil at IP'en skal vises:

<?php echo "Din IP: $REMOTE_ADDR"; ?>

 

Lagre html filen din som .php i stedet for .html/.htm

 

Det tror jeg skal funke :roll:

 

(vips så har du ditt første "php script"...)

Lenke til kommentar
takker for svar, skal sjekke det ut!

 

Hva mener du Invictus? Benytte meg av server side?

 

Server side = serveren gjør arbeidet med siden for å gjøre den dynamisk. F.eks dette forumet, du tror vel ikke noen har skrevet din post og lagt den inn i noen html filer? nei, dette må gjøres server-side, også sendes informasjonen tilbake til deg, altså, siden med alt design rundt og teksten du skrev inni (teksten blir lagret i en database)..

 

Her på forumet bruker de PHP (my favourite ;)) og jeg synes godt du kan benytte deg av dét :D

 

Selvfølgelig må serveren du har sidene dine på støtte PHP, men det er en nybegynner server om de ikke har PHP og finnes ikke mange av dem 8)

 

Evt. sett opp egen server som vi liksom-admin'er som vil lære nye ting gjør :p

Lenke til kommentar
Jeg lurer på om dette kanskje kan funke:

 

I html dokumentet ditt, putt dette, hvor du vil at IP'en skal vises:

<?php echo "Din IP: $REMOTE_ADDR"; ?>

 

Lagre html filen din som .php i stedet for .html/.htm

 

Det tror jeg skal funke :roll:  

 

(vips så har du ditt første "php script"...)

Vil ikke funke om du har register_globals off, så ikke bruk den der! ;)

 

Jeg modifiserer den litt jeg;

 

<?php echo "Din IP: $_SERVER[REMOTE_ADDR]"; ?>

Sliik, om det finnes noe som REMOTE_ADDR så skal den der funke, men serveren må være PHP-aktivert 8)

Lenke til kommentar
Jeg lurer på om dette kanskje kan funke:

 

I html dokumentet ditt, putt dette, hvor du vil at IP'en skal vises:

<?php echo "Din IP: $REMOTE_ADDR"; ?>

 

Lagre html filen din som .php i stedet for .html/.htm

 

Det tror jeg skal funke :roll:  

 

(vips så har du ditt første "php script"...)

 

mange ganger får man bare ipen til personens isp med den der, og feks i store firmaer får man ofte bare ipen til firmaets router ikke selve maskinen som personen sitter bak:

 

derimot kan man slenge på noen variabler og litt forskjellig funksioner :

 


<?php

function getip() {

if (isset($_SERVER)) {

if (isset($_SERVER["HTTP_X_FORWARDED_FOR"])) {

 $realip = $_SERVER["HTTP_X_FORWARDED_FOR"];

} elseif (isset($_SERVER["HTTP_CLIENT_IP"])) {

 $realip = $_SERVER["HTTP_CLIENT_IP"];

} else {

 $realip = $_SERVER["REMOTE_ADDR"];

}

} else {

if ( getenv( 'HTTP_X_FORWARDED_FOR' ) ) {

 $realip = getenv( 'HTTP_X_FORWARDED_FOR' );

} elseif ( getenv( 'HTTP_CLIENT_IP' ) ) {

 $realip = getenv( 'HTTP_CLIENT_IP' );

} else {

 $realip = getenv( 'REMOTE_ADDR' );

}

}

return $realip;

}



echo getip();

?>

Lenke til kommentar
Selvfølgelig må serveren du har sidene dine på støtte PHP, men det er en nybegynner server om de ikke har PHP og finnes ikke mange av dem 8)

 

Du er ikke lite frekk da eller? :grumpy:

 

Ren apache med tomcat her takk!

Fortell meg en ting du kan gjøre med php som jeg ikke kan med servlets så er store deler av formuen min din!

 

Hvis du åpner øynene dine og titter rundt utenfor miljøet ditt så oppdager du etterhvert at det finnes andre ting :wink:

Php er mye brukt på informasjons- og nyhetssteder, men duger ikke hvis man skal implementere litt mer avansert forretningslogikk. Sett noen nettbanker bygget på php i det siste eller?

 

Sorry, men den kommentaren tror jeg du bør bite i deg rimelig fort kompis :roll:

 

PS, hvis du tolker det som om jeg er sint på deg, så er jeg ikke det, må bare fortelle deg at du ikke har sett hele verden :)

Lenke til kommentar

Enden: MEN, servlets kan være litt overkill i mange situasjoner. For all del, er enig i det du sier, men PHP er bra til små til mellostore prosjekter, samt det er mye enklere å sette seg inn i enn servlet/JSP for folk uten Java-kunnskaper. I tillegg finnes det mye mer webhoster der ute som støtter PHP enn servlets, ihvertfall gratis/billig. Desverre!

 

Konklusjon: begge har fordeler og ulemper, men begge er bra! :)

 

ONTOPIC:

Dette er et perfekt eksempel på hvor enkelt og praktisk PHP er.

Lenke til kommentar

tror dette skal holde for å lagre antall besøkende i en fil... en bedre måte er å bruke sql, men hvis du ikke kan så mye om php så er vel ikke sql det letteste heller...


<?php

function getip(){

 if (isset($_SERVER)){ 

       if (isset($_SERVER["HTTP_X_FORWARDED_FOR"])){

           $realip = $_SERVER["HTTP_X_FORWARDED_FOR"];

       }elseif (isset($_SERVER["HTTP_CLIENT_IP"])){

           $realip = $_SERVER["HTTP_CLIENT_IP"];

       }else{

           $realip = $_SERVER["REMOTE_ADDR"];

       }

 }else{

 if ( getenv( 'HTTP_X_FORWARDED_FOR' ) ){

    $realip = getenv('HTTP_X_FORWARDED_FOR');

 }elseif ( getenv( 'HTTP_CLIENT_IP' ) ){

    $realip = getenv('HTTP_CLIENT_IP');

 }else{

    $realip = getenv( 'REMOTE_ADDR' );

   }

 }

 return $realip;

}



       $ip = getip();

       $fil = "/var/www/logs/total.txt";

       $f = file($fil);

       $antal = count($f);

       $yest = time() - 1800;

       $o = "0";

       $xidag = "f";

       $idag = time();

       $idag2 = date("Y F d, H:i");

               while ($antal > $o) {

                       $streg = explode(" ", $f[$o]);

                               if ($ip == $streg[0]) {

                               $x = "t";

                                       if ($streg[1] > $yest) {

                                               $xidag = "t";

                                       }

                               }

                       $o++;

               }

               if ($xidag == "f") {

                       $logg = fopen("$fil", "a");

                       fputs ($logg, "$ip $idag, $idag2n");



                       fclose ($logg);

               }

       $f = file($fil);

       $antal = count($f);

               if ($x == "t") {



                       print "$antal";

               }

               else {

                       print "$antal";

               }

?>

 

husk på at filbanen til total.txt må stemme og fila må være chmod 777...

Lenke til kommentar

folk som er online nå kan telles ved noe som dette, er riktignok ikke helt sikker på hvor nøyaktig det blir hvis mange folk logger av og på i løpet av en kort periode...

 


<?php

function users() {

   $count = 0;



   $success = opendir(session_save_path());

   if ($success == false) return -1;



   while (($file = readdir($success)) != false) {

       if (ereg("^sess", $file)) $count++;

   }

   closedir($success);

   return $count;

}



echo users();

?>

Lenke til kommentar
Enden: MEN, servlets kan være litt overkill i mange situasjoner. For all del, er enig i det du sier, men PHP er bra til små til mellostore prosjekter, samt det er mye enklere å sette seg inn i enn servlet/JSP for folk uten Java-kunnskaper. I tillegg finnes det mye mer webhoster der ute som støtter PHP enn servlets, ihvertfall gratis/billig. Desverre!

 

Konklusjon: begge har fordeler og ulemper, men begge er bra! :)

 

ONTOPIC:

Dette er et perfekt eksempel på hvor enkelt og praktisk PHP er.

 

Du har (som vanlig) så rett som det kan bli, men det jeg skulle fram til er at det heller er php som er nybegynner-saken. Greit, det er mer avansert enn html, og kan brukes til å lage flotte dynamiske sider, men det er fortsatt barnemat i forhold til det de store gutta bruker

 

Forresten, php eller ssi er nok bedre enn servlets i dette tilfellet ;)

Lenke til kommentar

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...