Avatar billede chrisson Nybegynder
08. november 2006 - 21:53 Der er 16 kommentarer og
1 løsning

Kun danske ip'er må komme ind på siden

Hej,

Hvordan laver man, så at kun danske ip'er kan komme ind i min side? Er ved at blive træt af, at blive spammet af de ublokkelige ip's, dem som bare skifter...
Avatar billede arne_v Ekspert
08. november 2006 - 21:56 #1
http://www.eksperten.dk/artikler/568

maa kunne give nogle ideer
Avatar billede j_jorgensen Nybegynder
08. november 2006 - 22:10 #2
Check hostname.
Avatar billede coderdk Praktikant
08. november 2006 - 22:31 #3
Avatar billede chrisson Nybegynder
09. november 2006 - 15:45 #4
Har i ikke nogle php scripts jeg kan sætte op?
Avatar billede coderdk Praktikant
09. november 2006 - 16:42 #5
Du har ikke kigget på vores links, eller hvad?
Avatar billede coderdk Praktikant
09. november 2006 - 16:42 #6
j_jorgensen, hostname vil ikke virke [godt nok] ;P
Avatar billede chrisson Nybegynder
09. november 2006 - 17:23 #7
Har jeg, men synes ikke lige det giver mening med at kun danske må komme ind.. kan ikke finde ud af at samle scriptet ud fra det...
Avatar billede coderdk Praktikant
09. november 2006 - 17:40 #8
Hvis du downloader Pure PHP: http://weirdsilence.net/software/85/

Så er det så nemt som:

require_once('ip2c.php');
$ip2c = new ip2country();
$ip2c->init( "ip2cntry.dat" );
$cidx = $ip2c->lookup( $_SERVER['REMOTE_ADDR'] );
$country = $ip2c->idx2country( $cidx );

if ( $country != 'DK' )
{
  die( "We only allow visitors from denmark. If you *are* in Denmark, please mail us your IP-address so we can investigate." );
}
Avatar billede coderdk Praktikant
09. november 2006 - 17:41 #9
Husk dog lige at downloade en opdateret binær database: http://weirdsilence.net/software/90/

;)
Avatar billede chrisson Nybegynder
09. november 2006 - 18:33 #10
Men vil det ikke slowe alt ned?
Avatar billede coderdk Praktikant
09. november 2006 - 18:46 #11
Ikke synderligt.

Du kan også gøre det, så det kun sker én gang pr. brugerbesøg:

<?php

session_start();

require_once('ip2c.php');

if ( empty( $_SESSION['checked'] ) )
{
  $ip2c = new ip2country();
  $ip2c->init( "ip2cntry.dat" );
  $cidx = $ip2c->lookup( $_SERVER['REMOTE_ADDR'] );
  $country = $ip2c->idx2country( $cidx );

  if ( $country != 'DK' )
  {
      die( "We only allow visitors from denmark. If you *are* in Denmark, please mail us your IP-address so we can investigate." );
  }
  $_SESSION['checked'] = 1;
}

?>

Den fil skal så bare includes på alle sider...
Avatar billede chrisson Nybegynder
09. november 2006 - 19:14 #12
Skal jeg så ikke bare bruge ip2c.php og ip2cntry.dat

Og selvfølgelig den der^

synes nemlig der er mange filer med
Avatar billede chrisson Nybegynder
09. november 2006 - 19:28 #13
Nu får jeg denen fejl:

Warning: fopen() [function.fopen]: Unable to access ip2cntry.dat in /customers/kasketten.dk/kasketten.dk/httpd.www/chat/brugere/include/ban/ip2c.php on line 47

Warning: fopen(ip2cntry.dat) [function.fopen]: failed to open stream: No such file or directory in /customers/kasketten.dk/kasketten.dk/httpd.www/chat/brugere/include/ban/ip2c.php on line 47
We only allow visitors from denmark. If you *are* in Denmark, please mail us your IP-address so we can investigate.
Avatar billede coderdk Praktikant
09. november 2006 - 20:39 #14
Du skal kun bruge ip2c.php og ip2cntry.dat - Du skal blot ligge dem samme sted...
Hvis du har skrevet require_once('include/ban/ip2c.php'); skal du så skrive:

$ip2c->init( "include/ban/ip2cntry.dat" );

Så skulle den finde datafilen!
Avatar billede chrisson Nybegynder
09. november 2006 - 20:43 #15
Fandt ud af det.. troede jeg var smart, og kunne includere den i ban filen, men det gad den ik...
Avatar billede chrisson Nybegynder
09. november 2006 - 20:44 #16
Tak skal du have.. :D:D:D du har fået points osv. hvis jeg har problemmer, så skriver jeg :D..
Avatar billede coderdk Praktikant
09. november 2006 - 20:55 #17
Det gør du bare :) Tak for point.
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