Zadejte hledaný výraz...

Najit slovo a vypsat jej

Mam v databazi: slova (id, text, time) zadana ruzna slova jako (viagr, hovn, debil, atd.) a rad bych kdyz uz nekdo odesle formular, tak projit slova z TEXTAREA a pokud se tam najde nejake sproste slovo, tak at to vypise...jake je to slovo v tom TEXTAREA.
Sam safra nevim jak to udelat.
16. 6. 2010 14:44:10
https://webtrh.cz/diskuse/najit-slovo-a-vypsat-jej#reply517161
Vít Michalek
verified
rating uzivatele
(14 hodnocení)
16. 6. 2010 15:11:20
A musíš o slovo vypisovat? Nestačilo by jej nahradit *** ? Kdybyjo tak nejjednoduší je to přes str_replace.
$slova = array("debi","viag","hovn");//atd.
$text = str_replace($slova, "***", $textArea);
Slo by to určitě přes nějaky regulár, ale na to dneska nemam hlavu. Snad to pomůže.
16. 6. 2010 15:11:20
https://webtrh.cz/diskuse/najit-slovo-a-vypsat-jej#reply517160
Nahrazovani neni problem, problem...vypsat to slovo, ktere je spatne - tj. pro ktere slovo se dany formular proste neodesle, ze je tam zakazane slovo. Taky sakra dneska na to nemam nejak hlavu :(
16. 6. 2010 15:12:56
https://webtrh.cz/diskuse/najit-slovo-a-vypsat-jej#reply517159
Vít Michalek
verified
rating uzivatele
(14 hodnocení)
16. 6. 2010 16:26:18
$zakazaneSlova = array("viagra","debi");
$slovo = array();
for($i=0;$i<=sizeof($zakazaneSlova);$i++) {
if(strpos($textArea,$zakazaneSlova)!==false) $slovo[] = $zakazaneSlova;
}
if(count($slovo)>0) echo "Obsahuje zkazane slova :".join(",",$slovo);
Nic jineho mě nenapadlo :)
16. 6. 2010 16:26:18
https://webtrh.cz/diskuse/najit-slovo-a-vypsat-jej#reply517158
Tohle je sice super a funguje. Vypise to samozrejme slova prave z array("viagra","debi"), avsak ja potrebuji vypsat to pouzite slovo prave z toho TEXTAREA, tj. jake to slovo to je.
Jde o to, ze v mySQL mam treba slovo viagra ulozeno jako viagr a to z toho duvodu, ze lze hledat pak neco jako viagra, viagry, viagru a lze to sklonovat.
Tak ze vyhledat a pokud zakazane slovo proste souvisi s tim co je v TEXTAREA....tak prave to slovo pouzite v tom TEXTAREA vypsat.
Chci asi moc, ale tohle prave nevim.
16. 6. 2010 18:32:31
https://webtrh.cz/diskuse/najit-slovo-a-vypsat-jej#reply517157
Martin Klíma
verified
rating uzivatele
(13 hodnocení)
16. 6. 2010 20:21:14
Napsal vecerapl;525931
Tohle je sice super a funguje. Vypise to samozrejme slova prave z array("viagra","debi"), avsak ja potrebuji vypsat to pouzite slovo prave z toho TEXTAREA, tj. jake to slovo to je.
Jde o to, ze v mySQL mam treba slovo viagra ulozeno jako viagr a to z toho duvodu, ze lze hledat pak neco jako viagra, viagry, viagru a lze to sklonovat.
Tak ze vyhledat a pokud zakazane slovo proste souvisi s tim co je v TEXTAREA....tak prave to slovo pouzite v tom TEXTAREA vypsat.
Chci asi moc, ale tohle prave nevim.
Co takhle?
$blackList = array("viag", "debi");
$Text = "Text viagra a debil";
$words = explode(" ",$Text); // rozdělení na jednotlivá slova
// porovnáme všechna zakázaná slova
foreach ($blackList as $blackword) {
foreach ($words as $word) {
if(strpos($word, $blackword) !== false){
$results[] = $word;
}
}
}
print_r($results);
16. 6. 2010 20:21:14
https://webtrh.cz/diskuse/najit-slovo-a-vypsat-jej#reply517156
Kamil Tomšík
verified
rating uzivatele
(3 hodnocení)
17. 6. 2010 00:16:32
reseni primo u klienta (javascript - volane na onclick):
//vytahnes si to samozrejme z textarey
var str = "viagra kokot debil hovno hovnocuc";
var bad_words = str.match ( /(viagr|kokot|debil|hovn)w*/g );
for ( var i = 0; i < bad_words.length; i++ )
alert ( "Nespisovne slovo: " + bad_words );
if ( bad_words.length == 0 )
form.submit ();
reputace potesi ;)
17. 6. 2010 00:16:32
https://webtrh.cz/diskuse/najit-slovo-a-vypsat-jej#reply517155
Pro odpověď se přihlašte.
Přihlásit