Nápady na rozšíření : phpRS Fórum
Napadlo vás zajímavé rozšíření? Myslíte si, že phpRS systému chybí nějaká důležitá funkce? Pokud ano, tak neváhejte a napište nám!
phpRS - redakční a informační systém
nejhledanější slova
Zaslán uživatelem/kou: martinf (IP adresa zaznamenána)
Datum: 2005-07-16, 20:37

V tomto článku jsem našel link ke stažení pluginu, který umí zaznamenat slova hledaná v článcích. To mě inspirovalo a ještě jsem to vylepšil.
Nejen, že se mi zaznamenávájí slova do tabulky, ale x nejhledanějších slov či slovních spojení se mi zobrazuje v bloku vyhledávání. Získám tak nejen já přehled, co návštěvníky webu zajímá, ale současně návštěvníci najdou inspiraci co hledat a co frčí.
Vidět to můžete v akci na mém webu.

Martin Fous [http://www.zsjvm.cz]

Re: nejhledanější slova
Zaslán uživatelem/kou: simon (IP adresa zaznamenána)
Datum: 2005-07-18, 00:22

supr nápad.

neches sem napsat jenom strucny popis jak si toho docilil?

Re: nejhledanější slova
Zaslán uživatelem/kou: martinf (IP adresa zaznamenána)
Datum: 2005-07-18, 09:29

V článku, na který je odkaz v prvním příspěvku je úprava a plugin, které umí do tabulky rs_stat_search zaznamenávat všechna slova, která někdo hledal. Ke každému slovu se zaznamenává datum, čas a IP adresa.

Já v tabulce zaznaménávám pouze slovo a počet hledání (datum, čas a IP ne). Nechal jsem tedy základ a upravil jsem ho tak, aby se nejprve zjistilo, zda hledané slovo není v tabulce. Pokud není, nastaví se počet hledání na 1, pokud už tam je, zvýší se počet o 1.

Udělal jsem si plugin vyhledávání, který v bloku zobrazí nejen hledací formulář, ale také výpis x nejčastěji hledaných slov či spojení slov.

Až teď, když to používá více lidí, jsem narazil na problém s češtinou (sadou znaků). Někdo tam hledal a do tabulky se uložila slova, kde písmena s diakritikou nahradily zmatky. Vypadá to, že je to po kliknutí na slova, která jsou ve výpise nejhledanějších. Ověřím to ještě v jiných vyhledávačích než je IE.

Martin Fous [http://www.zsjvm.cz]

Re: nejhledanější slova
Zaslán uživatelem/kou: martinf (IP adresa zaznamenána)
Datum: 2005-07-18, 09:35

V jiných prohlížečích to běhá (mozille a netscape) a tak netuším, komu a proč to hledalo a pak uložilo slova s chybnou diakritikou.

Martin Fous [http://www.zsjvm.cz]

Re: nejhledanější slova
Zaslán uživatelem/kou: martinf (IP adresa zaznamenána)
Datum: 2005-07-18, 12:16

praktický důvod - nesleduji kdo a kdy hledal, ale kolikrát bylo hledáno

možná by to šlo udělat i jinak - že by se počet nezapisoval do tabulky, ale pro výpis nejhledanějších by se to z tabulky spočítalo - nenapadlo mě, jak to prakticky provést

Martin Fous [http://www.zsjvm.cz]

Re: nejhledanější slova
Zaslán uživatelem/kou: simon (IP adresa zaznamenána)
Datum: 2005-07-18, 12:55

moh by si tu prosím rozepsat způsob zjištování existence slova a zvýšení hodnoty o jednu?

Re: nejhledanější slova
Zaslán uživatelem/kou: Michalek (IP adresa zaznamenána)
Datum: 2005-07-18, 13:08

$mysql=mysql_query("update ".$GLOBALS["rspredpona"]."tabulka set hodnota=(hodnota+1) where slovo=".$GLOBALS["slovo"],$GLOBALS["dbspojeni"]);
if(!$mysql):
 mysql_query("insert into ".$GLOBALS["rspredpona"]."tabulka values('".$GLOBALS["slovo"]."','1'",$GLOBALS["dbspojeni"]);
endif;

nerucim za to, je to jen nastin, musi se upravit

ted mi dochazi ze nevim jestli $mysql bude vracet tu spravnou hodnotu... no nic, je z toho snad videt aspon neco :-)

--
[ SAFUS.EU | OFFLINE | FOREVER ]

Re: nejhledanější slova
Zaslán uživatelem/kou: simon (IP adresa zaznamenána)
Datum: 2005-07-18, 22:26

no tak mi to nejak nefunguje. mám tohle:

// LOGOVANI VYHLEDAVANI
if($slova[0]!='all-phpRS-all'){
for($x=0;$x<count($slova);$x++){
$sldb .= $slova[$x]." ";
}
$db = mysql_query("INSERT INTO ".$GLOBALS["rspredpona"]."stat_search (id,word,time,ip) VALUES('','".$sldb."','".date("d-m-Y h:i:s")."','".$_SERVER["REMOTE_ADDR"]."')");

$db2=mysql_query("UPDATE ".$GLOBALS["rspredpona"]."stat_search_num SET pocet=(pocet+1) WHERE word='".$sldb."'",$GLOBALS["dbspojeni"]);

if(!$db2):
$db = mysql_query("INSERT INTO ".$GLOBALS["rspredpona"]."stat_search_num (id,pocet,word) VALUES('','1','".$sldb."')",$GLOBALS["dbspojeni"]);

endif;


}
// KONEC LOGOVANI


a chci aby to vzdy zapsalo do tabulky stat_search a kdyz nebude slovo v tabulce stat_search_num tak aby ho tam taky pripsalo, pokud tam uz bude tak aby zvysilo pocet o jednu

nejde mi práve to pripisování slov do druhé tabulky

Re: nejhledanější slova
Zaslán uživatelem/kou: martinf (IP adresa zaznamenána)
Datum: 2005-07-19, 08:20

Já mám jen jednu tabulku rs_stat_search (id, word, pocet), do které se zapisuje každé slovo. Pokud tam už je, zvýší se počet o 1, pokud tam není, přidá se tam a počet má 1.

Martin Fous [http://www.zsjvm.cz]

Re: nejhledanější slova
Zaslán uživatelem/kou: simon (IP adresa zaznamenána)
Datum: 2005-07-19, 16:14

jasny to chápu.

ale já to chci trochu jinak, chci aby se mi vždy zapisovalo do rs_stat_search a jen nekdy do rs_stat_search_num
nasledujici script mi nefunguje a ja nevim proc
jakou hondotu vraci $db?

// LOGOVANI VYHLEDAVANI
if($slova[0]!='all-phpRS-all'){
for($x=0;$x<count($slova);$x++){
$sldb .= $slova[$x]." ";
}
$db = mysql_query("INSERT INTO ".$GLOBALS["rspredpona"]."stat_search (id,word,time,ip) VALUES('','".$sldb."','".date("d-m-Y h:i:s")."','".$_SERVER["REMOTE_ADDR"]."')");

$db2=mysql_query("UPDATE ".$GLOBALS["rspredpona"]."stat_search_num SET pocet=(pocet+1) WHERE word='".$sldb."'",$GLOBALS["dbspojeni"]);

if(!$db2):
$db = mysql_query("INSERT INTO ".$GLOBALS["rspredpona"]."stat_search_num (id,pocet,word) VALUES('','1','".$sldb."')",$GLOBALS["dbspojeni"]);

endif;


}
// KONEC LOGOVANI

Re: nejhledanější slova
Zaslán uživatelem/kou: martinf (IP adresa zaznamenána)
Datum: 2005-07-21, 20:04

trochu jsem ten plugin vylepšil
důvody:
a) nejhledanější slova, která se v bloku vyhledávání objevovala s možností kliknout a nechat hledat znova, měla více hledání než ostatní = byla tak v přehledu nejhledanější a ostatní méně hledaná nebyla v bloku vůbec vidět
b) zlobilo kódování při hledání některými čtenáři
c) občas někdo hledal slova typu "bbb" či jiné nesmysly

řešení:
ad a) zobrazuji tedy náhodně x slov + počet jejich hledání
ad b) c) slova, která nejsou v žádném článku (nesmysly a zkomelená) se do tabulky rs_stat_search neukládají = uloží se, ale pokud nikde nejsou, hned se smažou

Martin Fous [http://www.zsjvm.cz]

Re: nejhledanější slova
Zaslán uživatelem/kou: simon (IP adresa zaznamenána)
Datum: 2005-07-22, 18:57

a dá se ten tvůj plugin někde stáhnout?

Re: nejhledanější slova
Zaslán uživatelem/kou: martinf (IP adresa zaznamenána)
Datum: 2005-07-22, 19:45

zatím ne
ještě to zkouším dovylepšit ;-)

Martin Fous [http://www.zsjvm.cz]

Re: nejhledanější slova
Zaslán uživatelem/kou: simon (IP adresa zaznamenána)
Datum: 2005-07-22, 20:28

ok,
a mohl by si napsat kod kde se rozhoduje zda ma byt slovo pripsano nebo navysena hodnota?

Re: nejhledanější slova
Zaslán uživatelem/kou: HJP (IP adresa zaznamenána)
Datum: 2005-09-22, 00:08

Už je to někde ke stažení? Vypadá to vážně skvěle, skoro jako má seznam.cz:-)



PotterHarry.net největší web na phpRS
[img]http://wwp.icq.com/scripts/online.dll?icq=216718242&img=1[/img] 216718242 | IRC: HJP (irc.felk.cvut.cz) | Jabber: PotterHarrynet | MSN: potterharrynet(at)hotmail.com | Skype: potterharrynet |Team Speak: 82.117.151.146 heslo: kofola | Yahoo: potterharrynet

Re: nejhledanější slova
Zaslán uživatelem/kou: simon (IP adresa zaznamenána)
Datum: 2005-09-22, 09:34

hjp: jeste ne musis si to udelat sam.pak jeste udelata javascript a bude to vazne vypadat jako seznam našeptávač



Lituji, ale pouze registrovaní uživatelé mohou zasílat příspěvky do této sekce.
This forum powered by Phorum and designed by STaNBoSS.