Filter vulgarizmov - podmienka

Programovacie jazyky, rady, poradňa...
test
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 5099
Registrovaný: 13 mar 2005, 5:20
Bydlisko: Doma

Filter vulgarizmov - podmienka

Príspevok od používateľa test »

Potreboval by som na jednej stranke spravit maly filter vulgarizmov. Nahadzem si nadavky napriklad priamo do scriptu, mysql ci do suboru, na tom uz nezalezi a chcem, aby pred odoslanim prispevku skontrolovalo, ci text neobsahuje nadavku. Ak ju bude obsahovat, tak vypise error a prispevok neulozi. Ma niekto takyto jednoduchy script? K++
Nadeo
Guru wannabe
Guru wannabe
Používateľov profilový obrázok
Príspevky: 2202
Registrovaný: 04 nov 2006, 19:38
Bydlisko: BA/LV
Kontaktovať používateľa:

Príspevok od používateľa Nadeo »

Kód: Vybrať všetko

    
if(strstr("nadavka",$string))
    {
      echo "nadavka sa nasla";
    }
test
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 5099
Registrovaný: 13 mar 2005, 5:20
Bydlisko: Doma

Príspevok od používateľa test »

Ako tam pridam viacej nadaviek?
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

Kód: Vybrať všetko

function ulozbeznadaviek($string){
    $nadavky = array("nadavka1","nadavka1","nadavka3");
    foreach($nadavky as $n){
        if(strstr($n,$string)) return false;
   }
   return true;
}
potom to pouzijes:
if(ulozbeznadaviek($tocochcesulozit)) {... sql prikazy na ulozenie ...}
test
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 5099
Registrovaný: 13 mar 2005, 5:20
Bydlisko: Doma

Príspevok od používateľa test »

Nieco funkcne nemate? Lebo audiotrack ma asi iny Apache a PHP ak mu to funguje. To co napisal je uplne nefunkcne. Dakujem krasne.
Nadeo
Guru wannabe
Guru wannabe
Používateľov profilový obrázok
Príspevky: 2202
Registrovaný: 04 nov 2006, 19:38
Bydlisko: BA/LV
Kontaktovať používateľa:

Príspevok od používateľa Nadeo »

Tam nema co nefungovat, asi bude chyba na tvojej strane
test
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 5099
Registrovaný: 13 mar 2005, 5:20
Bydlisko: Doma

Príspevok od používateľa test »

Audiotrackov nefunguje a ten tvoj ma len jednu nadavku, ale ja ich tam potrebujem nasypat daleko viacej.
caesar1987
Addict
Addict
Používateľov profilový obrázok
Príspevky: 3001
Registrovaný: 02 okt 2005, 0:57
Bydlisko: Nové Zámky
Kontaktovať používateľa:

Príspevok od používateľa caesar1987 »

a ako presne to nefunguje? co to robi?
test
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 5099
Registrovaný: 13 mar 2005, 5:20
Bydlisko: Doma

Príspevok od používateľa test »

Nic to nerobi, to je ten problem.
Nadeo
Guru wannabe
Guru wannabe
Používateľov profilový obrázok
Príspevky: 2202
Registrovaný: 04 nov 2006, 19:38
Bydlisko: BA/LV
Kontaktovať používateľa:

Príspevok od používateľa Nadeo »

Moj bol len priklad, a ta audiotrackova funkcia mi funguje
zaggi
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 314
Registrovaný: 04 feb 2007, 19:32

Príspevok od používateľa zaggi »

test napísal:Nic to nerobi, to je ten problem.
ukaz nam kod ako si to pouzil (nech sa vsetci zasmejeme ako si definoval funkciu ktoru nikde nepouzijes a teda to nic nerobi ...)
test
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 5099
Registrovaný: 13 mar 2005, 5:20
Bydlisko: Doma

Príspevok od používateľa test »

Takto:

Kód: Vybrať všetko

if(ulozbeznadaviek($fi_text))
   {
	die("aaa");
    }
else
   {
           die("bbb");
    }
Toto bol taky test, v oboch pripadoch to hodilo aaa.
zaggi
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 314
Registrovaný: 04 feb 2007, 19:32

Príspevok od používateľa zaggi »

Kód: Vybrať všetko

function ulozbeznadaviek($string){ 
    $nadavky = array("nadavka1","nadavka1","nadavka3"); 
    foreach($nadavky as $n){ 
        if(strstr($n,$string)) return false; 
   } 
   return true; 
}

$fi_text = "nadavka1 lalalala nadavka3";

if(ulozbeznadaviek($fi_text))
   {
	die("aaa");
    }
else
   {
           die("bbb");
    }
vrati aaa?
test
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 5099
Registrovaný: 13 mar 2005, 5:20
Bydlisko: Doma

Príspevok od používateľa test »

zaggi - Ak obsahuje nadavku, vrati aaa a ak neobsahuje nadavku, tak tiez vrati aaa :cry:
chrono
VIP
VIP
Používateľov profilový obrázok
Príspevky: 7127
Registrovaný: 25 dec 2006, 15:17

Príspevok od používateľa chrono »

V tej funkcii strstr sú prehodené parametre (a navyše lepšia by bola funkcia strpos, alebo stripos).
Napísať odpoveď