Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: banowanie neostrady
Forum PHP.pl > Forum > Przedszkole
bronx
witam

chciałbym zbanować wszystkich z neostrady (czyli co mają hosty and67.neoplus.adsl.tpnet.pl i inne)

więc jak ma to wyglądać ?

nigdy nie byłem dobry z wyrażeń regularnych a chyba o nie tu chodzi, prawda ? sad.gif

pozdrawiam
nibytak
wystarczy strpos:

  1. <?php
  2.  
  3.     $hostname = gethostbyaddr($_SERVER['REMOTE_ADDR']);
  4.  
  5.     echo $hostname.'<br />';
  6.  
  7.     if(strpos($hostname, '.neoplus.adsl.tpnet.pl') === false) {
  8.         echo 'nie neo';
  9.     } else {
  10.         echo 'neo';
  11.         die();
  12.     };
  13.  
  14. ?>


a wlasciwie to po co ci taki features?

ps. po ip tez mozna, neo to zdaje sie siec 83.27.255.255, ale tego nie jestem pewien.
tts
- wyciagasz nazwe hosta z ip za pomoca gethostbyaddr" title="Zobacz w manualu PHP" target="_manual,
- szukasz w nazwie neoplus.adsl.tpnet.pl za pomoca eregi" title="Zobacz w manualu PHP" target="_manual,

albo:

- poprostu sprawdzasz czy w adresie ip klienta znajduje sie na poczatku ciag 83. za pomoca eregi" title="Zobacz w manualu PHP" target="_manual
Bakus
83.* to nie tylko neostrada...
tts
no fakt, wiec chyba najbezpieczniej bedzie przez nazwe hosta. zastanawia mnie tylko po co taki mechanizm...
bronx
zaraz sprawdze czy to dziala i dzieki za podpowiedzi....

a po co mi to ? hmm sprawa prosta paru kolesi na mojej ksiedze gosci zrobilo sobie czata z idiotycznymi wpisami i nie mam jak ich zbanowac to zbanuje na jakis czas wszystkich z neo to moze to cos pomoze smile.gif

pozdrawiam
wini
podbijam temat, bo mam taki sam problem. chcialbym zablokowac inny hosting, nie neo, jednak gdy dodaje ten skrypt do pliku index.php pojawia mi sie komunikat:

Kod
Parse error: syntax error, unexpected T_VARIABLE in /home/[...]/public_html/index.php on line 3


moglby ktos podpowiedziec mi co jest nie tak w tej trzeciej linijce? smile.gif


Cytat(nibytak @ 1.03.2005, 02:11:20 ) *
wystarczy strpos:

  1. <?php
  2.  
  3.     $hostname = gethostbyaddr($_SERVER['REMOTE_ADDR']);
  4.  
  5.     echo $hostname.'<br />';
  6.  
  7.     if(strpos($hostname, '.neoplus.adsl.tpnet.pl') === false) {
  8.         echo 'nie neo';
  9.     } else {
  10.         echo 'neo';
  11.         die();
  12.     };
  13.  
  14. ?>

tts
Sprawdź białe znaki. Podczas przeklejania z przeglądarki do edytora mogło się coś przyplątać czego parser nie lubi.
wini
Kod
<?php
    $hostname = gethostbyaddr($_SERVER['REMOTE_ADDR']);
    echo $hostname.'<br />';
    if(strpos($hostname, '.neoplus.adsl.tpnet.pl') === false) {
        echo 'nie neo';
    } else {
        echo 'neo';
        die();
    };
?>


wkleiłem w dokładnie takiej postaci i niestety błąd nadal występuje.
tts
Ponawiam prosbę. Białe znaki to nie tylko [entery]. Taki problem z kodem jaki masz często występuje np. podczas przeklejania w Operze. Włącz w edytorze wyświetlanie białych znaków zobaczysz co rzeczywiście zostało wklejone. Możesz też po prostu w istniejącym kodzie po wklejeniu usunąć białe znaki, a następnie je ręcznie powstawiać.
Btw, kod jest poprawny, sprawdziłem.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.