Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Lekka blokada "przekleństw"
Forum PHP.pl > Forum > PHP
ahold
Witajcie,

Dzisiaj moje TODO stwierdziło że trzeba się zabrać za problem "przekleństw", wiadomo że nikt nie lubi na siłę gdy cenzuruje się internet, więc ograniczymy się do loginów naszych podopiecznych.

W ciągu kilku chwil, powstała taka oto funkcja.

  1. <?php
  2. function niedozwolony_login($login)
  3. {
  4. $ilosc=0;
  5. global $dbh;
  6. global $user;
  7.  
  8. $userek=$user['id'];
  9. $sql = "SELECT *
  10. FROM niedozwolone_loginy
  11. ";
  12.  
  13. foreach ($dbh->query($sql) as $row)
  14.        {
  15.  
  16. $findme   = $row['tresc'];
  17. $pos = strpos($login, $findme);
  18. if ($pos === false)
  19. {
  20.    //nie znaleziono
  21. } else
  22. {
  23. return 1;
  24. }
  25.  
  26.        }
  27. return 0;
  28.  
  29. }
  30. ?>


Spełnia ona swoje zadanie, ale niestety w 150 %.
Już mówię.

Weźmy, że dodaję do bazy danych zablokowane słowo "suka".
Użytkownik wpisuje, borsuka <- oops, login zabroniony.


Czy ma ktoś jakąś anty koncepcję ?.

Może przerobić bazę danych, na full tekst, i wydać zapytanie z obliczeniem wagi, wtedy słowo suka = miało by wagę 100 %, a borsuka już nie ?


Czekam na opinię.

Pozdrawiamy
Wicepsik
Może wyrażenia regularne??

  1. <?php
  2. foreach ($dbh->query($sql) as $row)
  3. {
  4.    $findme = $row['tresc'];
  5.    $pos = strpos($login, $findme);
  6.    if (preg_match('/^'.$findme.'$/i', $login){
  7.   //nie znaleziono
  8.    }else{
  9.        return 1;
  10.    }
  11.  
  12. }
  13. ?>
Skie
zastanów się czy jest sens coś takiego robić, zauważ, że jeżeli odblokujesz "borsuka" to jednocześnie odblokujesz takie nicki jak np. "wielkasuka" - a to też raczej do ładnych nie należy
dotangelo
Musiałbyś ręcznie moderować loginy, jeśli "suka" wystąpi w "borsuka", wtedy wysyłaj sobie dane, że login MOŻE być nieodpowiedni, i ręcznie go sprawdzaj. Inaczej będzie to dosyć trudno zrobić.
ahold
Czyli praktycznie nieciekawa sprawa.

Trudno.
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.