Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php]Sprawdz IP i wpuść jeśli dobre
Cwirek1987
post
Post #1





Grupa: Zarejestrowani
Postów: 71
Pomógł: 0
Dołączył: 9.06.2007

Ostrzeżenie: (10%)
X----


Mam strone od niedawna zaczołem przerabiać ja i pisać w jezyku php.

Chciałbym teraz na strone www dać nowy skrypt który by sprawdzał IP i dopuszczał badz nie dopuszczał ludzi z danego zakresu IP.

Problem mam z tym ze na moim serverze nie działa ten sposób z wykozytsaniem .htaccess. Chyba ze coś zle robie i otym nie wiem. Server mam na komputerze domowym postawiony na programie WebServ.

Może znacie jakieś inne sposoby lub jakieś gotowe skrypty które by mi mogły pomóc w jakiś sposób.

Z góry dzięki za pomoc!
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Glarden
post
Post #2





Grupa: Zarejestrowani
Postów: 153
Pomógł: 2
Dołączył: 28.05.2007
Skąd: Stamtąd

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


Ostatnio zrobiłem kontrolę ze względu na IP opartą na plikach:
index.php
  1. <?php
  2. $ip = $_SERVER["REMOTE_ADDR"];
  3. $kupa = file('ip.txt');
  4. if (in_array ($ip, $kupa)) {
  5. echo ("Wynocha, Twoje ip nie jest mile widziane!");
  6. echo ("<br>Twoje ip: $ip.");
  7. }
  8. else {
  9. echo ("<h1>Witamy na stronie!</h1>");
  10. }
  11. ?>

To jest sama strona. Teraz strona do dodawania IP do listy zablokowanych, dopisz.php:
  1. <?php
  2. if (isset ($_POST['ip'])) {
  3. $ip = $_POST['ip'];
  4. $plik = fopen('ip.txt', 'r+');
  5. $tit = fseek($plik, 0, SEEK_END);
  6. $zapisz = fwrite($plik, "n".$ip."");
  7. fclose($plik);
  8. echo ("Ip zostalo zablokowane!");
  9. echo ("<hr>");
  10. $kupa = file('ip.txt');
  11. print_r($kupa);
  12. }
  13. ?>

I jeszcze do usuwania IP z zablokowanych (trochę amatorsko zrobione, ale nie chciało mi się myśleć):
  1. Odblokuj ip<br>
  2. <form action='odblokuj.php' method='post'>
  3. <select name="odblokuj" size=1>
  4. <?php
  5. $tab = file('ip.txt');
  6. $ile = count($tab);
  7. $n = 0;
  8. while ($n<$ile) {
  9. echo ("<option>".$tab[$n]."</option>");
  10. $n++;
  11. }
  12. ?>
  13. </select>
  14. <input type='submit' value='oblokuj'/>
  15. </form>
  16. <hr>
  17. <?php
  18. if (isset ($_POST['odblokuj'])) {
  19. $ip = $_POST['odblokuj'];
  20. $nazwa = 'ip.txt';
  21. $plik=fopen('ip.txt','r+');
  22. $dane=fread($plik,filesize($nazwa));
  23. $nowy = str_replace ("n".$ip, "", $dane);
  24. $nowy1 = str_replace ($ip."n", "", $nowy);
  25. fclose ($plik);
  26. $plik2 = fopen('ip.txt', 'w');
  27. $zapis = fwrite($plik2, $nowy1);
  28. fclose($plik2);
  29. echo ("Zmiany zapisane.");
  30. }
  31. ?>


Oczywiście musisz mieć jeszcze plik ip.txt w tym samym folderze.
Aha, przed wszystkimi "n" musisz wstawić "\", bo - jak widzę - ucięło i pokazać nie chce.

Ten post edytował Glarden 9.06.2007, 14:58:49
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: 2.10.2025 - 17:25