Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Przekleństwo na Pozdrowieniach = ban!
Forum PHP.pl > Forum > PHP
LeNy
Witam. Mam pozdrowienia OnLine i chciałbym zrobić coś takiego że jak ktoś napisze przeklenstwo to ja po zalogowaniu w konsolke moge dac na ip bana ze nie będzie mógl dodać pozdro. Jak takie coś zrobić questionmark.gif
phpion
Utwórz sobie tablicę zawierającą niedozwolone słowa (wulgaryzmy), następnie sprawdzaj czy którekolwiek z tych słów nie znajduje się w treści pozdrowień (przydadzą się wyrażenia regularne). A ban na IP? Stwórz w bazie danych tabelę, która będzie przechowywała listę zbanowanych IP i przed wysyłaniem wiadomości sprawdzaj czy IP pozdrawiającego nie znajduje się w tej tabeli. Tyle - tak z grubsza.
LeNy
zle mnie zrozumiałeś chcę zrobić że jak zaloguje sie w panel admina gdzie moge usuwac te pozdro to jak np zobacze ze ktos przeklnie lub obrazi to klikne ZBANUJ! i zapisze jego ip np w pliku ban.txt + jeszcze zeby było jak ktoś z zbanowanym Ip napisze to zeby jego pozdro nie zostawalo dodawane tylko mial napis Dostałeś bana czy cos takiego
phpion
Cytat(LeNy @ 20.02.2009, 20:15:23 ) *
zle mnie zrozumiałeś

Dobrze cię zrozumiałem.
LeNy
a koniecznie musze w mysql robic bo ja z jakis rok nie siedzialem w mysql i nie pamietam :/
Można zrobić zeby zapisywalo w pliku tekstowym??
phpion
Cytat(LeNy @ 20.02.2009, 20:21:20 ) *
Można zrobić zeby zapisywalo w pliku tekstowym??

Oczywiście.
LeNy
zrobiłem coś takiego:
  1. <?php
  2. $blocked "ban.txt";  
  3.  
  4.  if (ereg($blocked))  
  5.  {  
  6.  echo "Dostałeś Bana! ";  
  7.  exit();  
  8.  }  
  9.  ?>


Czy to jest dobry kod na czytanie z pliku ban.txt i jak jest ip zapisane to wyskakuje Dostałeś Bana! questionmark.gif
phpion
Weź to zapisz w normalnych tagach ([PHP]) bo nie idzie tego odczytać.
LeNy
Już Zmieniłem kod w poprzednim poście
phpion
W takim razie tamten kod nie ma prawa działać.

1. Pobierz dane z pliku (fopen + fgets + fclose, file lub file_get_contents - do wyboru do koloru).
2. ereg jest ci w tym momencie zbędny
3. Sprawdzaj czy IP internauty znajduje się w pliku.
LeNy
A podałbyś mi przykład kodu, bo mi jest to pilnie potrzebne :/
phpion
  1. <?php
  2. $ip = '127.0.0.1';
  3. $is_banned = true;
  4.  
  5. $file = fopen('ban.txt');
  6.  
  7. while (!(feof($file))) {
  8.    $line = chop(fgets($file, 15)); // IP = max 15 znaków
  9.    
  10.    if ($line == $ip) {
  11.        break;
  12.        $is_banned = false;
  13.    }
  14. }
  15.  
  16. fclose($file);
  17.  
  18. if ($is_banned === true) {
  19.    echo 'Masz bana!';
  20.    exit;
  21. }
  22.  
  23. // nie masz bana
  24. ?>

Schowałem tutaj 3 niespodzianki (w 3 miejscach musisz dokonać niewielkich zmian).
LeNy
dzieki wielkie.

//lock temat
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.