Google “keyword” Search

Dali ste ikada zeljeli da imate “google” search na vasoj stranici u vasoj bazi podataka? Naravno, bez explode(” “, $text) i onda WHERE moj_text IN ($text), vec bas tekst koji trazite onako kako ste ga napisali. Fulltext opcija u MySQL and SQLlight vam pruza ovu mogucnost. U MySQL, na primjer, kada pravite definicije od table, jedna od opcija ce da bude fulltext.


CREATE TABLE `moji_text` (
  `id` int(11) NOT NULL auto_increment,
  `moj_text` text character set utf8,
  PRIMARY KEY  (`id`),
  FULLTEXT KEY `moj_text` (`moj_text`)
)

Znaci, sada imamo field moj_text koji radi kao fulltext. Jedino sto je preostalo je napraviti select query.


SELECT *
  MATCH(moj_tex)
AGAINST ('".trim($trazilica)."' IN BOOLEAN MODE) AS score
FROM
  moj_text
WHERE
  MATCH(sp.PHRASE)
AGAINST ('".trim($trazilica)."' IN BOOLEAN MODE)

$trazilica u ovom slucaju je text koji zelite da nadjete. Znaci bilo sta “Programeri su najbolji” na primjer; Ovaj select statement ce da vrati score kao jedan od rezultata. Sto znaci ako imate tekst u bazi podataka koji ima rijec najbolji na kraju a Programeri na pocetku i imate drugi text gdje imate Programeri i najbolji blizi jedno drugom, drugi text ce imati jedan dok ce prvi text imati dva.

To je to, postavite pitanja ako zelite malo vise detalja.

Postavljeno u Ostalo » juli 14th, 2008. Trackback URI: trackback
Tags: ,

Nema Komentara za “Google “keyword” Search”

Postavi Komentar

XHTML: Mozes koristiti ove komande: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>