ANNOUNCE: Indexovani dokumentu v Perlu a MySQL

Roman LISZKA liszak na seznam.cz
Pondělí Říjen 18 12:14:25 CEST 1999


Daniel Kafka wrote:
> 
> >z URL http://www.fi.muni.cz/~adelton/perl/MyConText-0.49.tar.gz je
> >mozne stahnout a na http://www.fi.muni.cz/~adelton/perl/ najit README

> Super... planuje se do budoucna i verze pro PHP? Myslim, ze by to
> vsechny webove vyvojare silne potesilo :)

Nedival jsem se na to co umi MyConText, ale vzdyt indexovani dokumentu
je i v PHP tak snadne (s pouzitim MySQL): 
Vytvorime si tabulku Slova:

create table Slova (
	Slovo varchar(20) not null, 
	ID int not null, 
	primary key(Slovo, ID), 
	key ID_(ID)
);

kde ID muze byt i jineho typu a jednoznacne nam specifikuje dokument, ve
kterem se slova nachazeji. A jiz staci programovat: v promenne $Text
mame text pro oindexovani, v $ID se nachazi ID dokumentu

mysql("data","delete from Slova where ID='$ID'"); // smaze stara slova (byla-li tam nejake)
$slova=split('[., ]',strtolower($Text)); // prekonverti na mala pismena a rozseka na slova podle separatoru (prvni parametr)

$pocet=count($slova);	// zjisti pocet slov
for ($i=0; $i<$pocet;$i++)  // pro vsechna slova
	mysql("data","insert into Slova Values('".addslashes($slova[$i])."',$ID)"); // ulozeni

a kdyz chcete hledat, staci hledane $slovo prevest na male pismena a
hledat napr.:
$res=mysql("data","select ID from Slova where
Slovo='".addslashes(strtolower($slovo))."'");

a mate jednotliva ID jednotlivych dokumentu. Jeste staci vylepsit o
zruseni cestiny a pripadne i pocitat vyskyty a mate to zadarmo. Pouzito
na www.hledam.cz

-- 
================================================================
Ing. Roman LISZKA				AplInt
mailto: liszak na seznam.cz			1. Maje 500
tel.: +420 659 334 621, +420 603 344611		739 61 Trinec 1
http://www.hledam.cz				Czech Republic


Další informace o konferenci Databases