Corn Skrevet 18. februar 2003 Del Skrevet 18. februar 2003 Heisann, forsøker å logge iper i min gjestebok. Har funnet denne phpsaken som skal skrive ip til en fil. Implementering for skje en annen gang : <?php session_start(); if(!session_is_registered('counted')){ $agent = $_SERVER['HTTP_USER_AGENT']; //dette er line 4.. $uri = $_SERVER['REQUEST_URI']; $user = $_SERVER['PHP_AUTH_USER']; $ip = $_SERVER['REMOTE_ADDR']; $ref = $_SERVER['HTTP_REFERER']; $dtime = date('r'); if($ref == ""){ $ref = "None"; } if($user == ""){ $user = "None"; } $entry_line = "$dtime - IP: $ip | Agent: $agent | URL: $uri | Referrer: $ref | Username: $user n"; $fp = fopen("logs.txt", "a"); fputs($fp, $entry_line); fclose($fp); session_register('counted'); } ?> Legger jeg den ut på start.no så får jeg Parse error: parse error in /home/g/gj/gjestebo/public_html/ar.php on line 4 På min egen server, med nyeste php version tror jeg Parse error: parse error, unexpected T_VARIABLE in c:inetpubwwwrootar.php on line 4 Tror jeg får feil på alle $uri, $agent, $ip og disse i starten. Er helt newbie med PHP, men har en del kunnskaper fra andre progge språk, så jeg "skjønner" en del kode. :wink: Edit; Forsåvidt så funker denne: <?php echo ( $_SERVER["REMOTE_ADDR"] ); ?> Du kan jo hjelpe meg (peke på tutorial) til å skrive "REMOTE_ADDR" til en fil også.. Lenke til kommentar
Corn Skrevet 18. februar 2003 Forfatter Del Skrevet 18. februar 2003 Whops, studerte litt kode her. Og prøvde meg litt rundt (ingen tutorials, kun "se på kode og forstå" modus) Kom opp med dette <?php $filename = 'ip.txt'; $fp = fopen($filename, "a"); $string = ( $_SERVER["REMOTE_ADDR"] ); $fullsak = ("Ip adresse: $string"); $write = fputs($fp, $fullsak); fclose($fp); ?> Dette funker jo! Takk for hjelpen Men hvordan får jeg inn linjeskift etter at $string blir satt inn i $fullsak. Altså slik at teksten "Ip adresse:" kommer på ny linje neste gang? Altså $fullsak = ("Ip adresse: $string $linjeSkiftKommando"); Lenke til kommentar
Scalpel Skrevet 4. mars 2003 Del Skrevet 4. mars 2003 Du kan eventuelt ta en kikk på dette skriptet som jeg har skrevet. Det logger IP + litt annen informasjon i en tekstfil. Lenke til kommentar
Corn Skrevet 6. mars 2003 Forfatter Del Skrevet 6. mars 2003 Jeg har nå sett litt hvordan mitt script funker.. Det er noen flauser da: Jeg fikk en venn av meg til å gå til www.whatismyip.com (Han har telenor) Der fikk han 217.70.229.46, det vet jeg at flere andre telenor kunder får også. En gethostbyaddr() gir wittgenstein.ti.telenor.net. Dette vil si at min logging ikke fungerer, dvs jeg kan ikke skille melleom en del telenor (proxy?) kunder. Finnes det noen annen måte, hvor jeg får deres egentlig ip eller noe? Lenke til kommentar
Plazma Skrevet 6. mars 2003 Del Skrevet 6. mars 2003 if(isset($_SERVER['HTTP_CLIENT_IP'])) { $ip = $_SERVER['HTTP_CLIENT_IP']; } else { $ip = $_SERVER['REMOTE_ADDR']; } Denne lille kodesnutten skal gi riktig IP uansett Lenke til kommentar
Goebbels Skrevet 6. mars 2003 Del Skrevet 6. mars 2003 <?php $filename = 'ip.txt'; $fp = fopen($filename, "a"); $string = ( $_SERVER["REMOTE_ADDR"] ); $fullsak = ("Ip adresse: $string"); $write = fputs($fp, $fullsak); fclose($fp); ?> Hvordan/hva kan jeg legge inn slik at den også skriver inn dato/klokkeslett til samme linje? Tittet på din Scalpel, men fikk den ikke til å funke. Mvh Goebbels Lenke til kommentar
christt Skrevet 7. mars 2003 Del Skrevet 7. mars 2003 Sånn: <?php $filename = 'ip.txt'; $fp = fopen($filename, "a"); if(isset($_SERVER['HTTP_CLIENT_IP'])) $ip = $_SERVER['HTTP_CLIENT_IP']; else $ip = $_SERVER['REMOTE_ADDR']; if($write = fputs($fp, date("dmY H:i:s")." - ".$ip)) echo 'Skrev til fil.'; else echo 'Feil ved skriving til fil'; fclose($fp); ?> Denne koden vil lagre data + ip i følgende format: ddmmyyyy hh:mm:ss - xxx.xxx.xxx Lenke til kommentar
Goebbels Skrevet 7. mars 2003 Del Skrevet 7. mars 2003 Parse error: parse error in xxxxlog.php on line 5 Lenke til kommentar
christt Skrevet 7. mars 2003 Del Skrevet 7. mars 2003 Da må du ha gjort noe tull selv... For jeg testet (copy&paste) koden... Fikk opprettet en fil som het ip.txt med dette innholdet: 07032003 12:11:35 - 129.***.***.*** Lenke til kommentar
Scalpel Skrevet 7. mars 2003 Del Skrevet 7. mars 2003 Tittet på din Scalpel, men fikk den ikke til å funke. Lagde du katalogen 'stats' med de to filene i? Jeg skrev det skriptet for en Linux-maskin, har ikke prøvd det med Windows. Lenke til kommentar
Corn Skrevet 7. mars 2003 Forfatter Del Skrevet 7. mars 2003 Da må du ha gjort noe tull selv... For jeg testet (copy&paste) koden...Fikk opprettet en fil som het ip.txt med dette innholdet: 07032003 12:11:35 - 129.***.***.*** Får parse error jeg også, den liker ikke den if setningen.. Lenke til kommentar
christt Skrevet 7. mars 2003 Del Skrevet 7. mars 2003 Hvilken PHP versjon kjører dere? Jeg kjører 4.2.3 på Apache 2.0.43, Windows XP. Lenke til kommentar
Corn Skrevet 7. mars 2003 Forfatter Del Skrevet 7. mars 2003 4.3.0 på IIS 5.1 på Windows Xp Jeg fant ut følgende: På serveren hvor jeg hoster gjesteboken min, så blir $REMOTE_ADDR på de fleste telenor kunder lik.. (altså slik som på www.whatismyip.com.) På home.no.net så finner $REMOTE_ADDR den korrekte på telenorkundene.. Lenke til kommentar
Anbefalte innlegg
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 kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå