Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Lekka blokada "przekleństw"
ahold
post
Post #1





Grupa: Zarejestrowani
Postów: 80
Pomógł: 0
Dołączył: 27.05.2009

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


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
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 19.08.2025 - 23:15