• 3 odgovora
  • 2.704 pregleda
Nepoželjne reči 19.06.2010. u 12:46 · pre 199 meseci #1
Pozdrav,
Imam sajt na kom korisnici dodavaju vlastiti sadržaj (fore, viceve i sl). Hoću da ubacim neke nepoželjne reči (psovke i sl.) koje se nebi upisivale u bazu kada bi ih korisnik unio. Koristim phpmyadmin, da li mi neko može pomoći oko ovog?
PS. Početnik sam za php i mysql, zato se izvinjavam ako je ovo neko noob pitanje i sl.
Re: Nepoželjne reči 19.06.2010. u 15:37 · pre 198 meseci #3
Pretpostavljam da radis validaciju objekta pre nego sto ga upises u bazu;
Code:

  foreach (Forbiddenword::getAll() as $word){
    if (preg_match('/[ \.]?' . $word->name . '[ \.]?/i', $this->description)){
      $this->getErrorStack()->add('description', 'Do not use forbidden words'); // ili return false, zavisno od tvog programa
        break ;
    }
  }


Znaci uzmes listu zabranjenih reci i za svaku rec uradis preg_match u 'description' polju (tj. onoga sto je korisnik uneo). Ako postoji neka od zabranjenih reci, upozoris korisnika da bude kulturniji.
Re: Nepoželjne reči 20.07.2010. u 14:04 · pre 197 meseci #4
Mislim da ti je brze da napravis niz sa nepozeljnim recima i da koristis str_replace - brzi je od preg_match

npr.

Code:

$ban[] = '.ebi';
$ban[] = 'mrs';


i onda ide provera kao sto Mitke rece


Code:


foreach($ban as $b) {
  $text = str_replace($b, '', $text);
}



a ako hoces samo upozorenje da das korisniku onda radis str_pos koji ti pronalazi rec u tekstu
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme