Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Jak zablokować jakiś adres..
slepy
post
Post #1





Grupa: Zarejestrowani
Postów: 70
Pomógł: 0
Dołączył: 27.02.2003

Ostrzeżenie: (0%)
-----


Witam. Chciałbym blokować niektóre adresy. Adresy są dopisywane do pliku, po 3 błędnych zalogowaniach. Wygląda to mniej wiecej tak:
plik shitlist.php
Kod
195.214.240.1
199.256.256.12


Teraz źródło z indexa..
  1. <?php
  2. $x=file(&#092;"shitlist.php\");
  3. foreach($x as $line)
  4. {
  5. if($_SERVER[REMOTE_ADDR]==$line)
  6. {
  7. exit();
  8. }
  9. }
  10. ?>

I chodzi o To, że niby są adresy takie same, ale ich nie blokuje.. Wydaje mi się że błąd tkwi w pliku ponieważ jak jest przejście do następnej lini, występuje znak, który pewno nie pasuje do $_SERVER[REMOTE_ADDR] . MA ktoś jakieś pomysły jak to rozwiązać?

Ten post edytował slepy 12.02.2005, 21:41:27
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
dr_bonzo
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

Ostrzeżenie: (0%)
-----


Po wczytaniu pliku przez file(), kazda linia posiada takze znak konca linii "\n"
  1. <?php
  2.  
  3. if($_SERVER[REMOTE_ADDR] . &#092;"n\" ===$line)
  4.  
  5. ?>


lub przed porownaniem usun znaki konca linii z kazdej z linii (strreplace( "\n", '', .... ) )
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 9.10.2025 - 09:10