Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Porównywanie tekstów
Forum PHP.pl > Forum > PHP
nabuchodonozor_plt
Mam bazę MySQL, a w niej artykuły.

Chciałbym napisać skrypt, który zamieniałby niektóre słowa z wyświetlanego artykułu na linki, które prowadziłyby do innych, związanych z tą samą tematyką artykułów.

Na wszelki wypadek podam przykład :

treść artykułu :
Podobnie jak inne języki programowania, C++ nie jest bezpośrednio...

chciałbym, żeby zamienił na np. :
  1. Podobnie jak inne <a href='slownik.php?a=jezykiprog'>języki programowania</a>, <a href='historiaC.php'>C++</a> nie jest bezpośrednio...


Sprawa sama w sobie niewydaje się być trudna. Problem pojawia się wtedy, gdy trzeba spośrów 100 artykułów zawierających słowo 'C++' w tytule wybrać ten 1, który będzie najbardziej pasował. (i do którego link trzeba będzie podstawić pod słowo 'C++')

Czy macie pomysł, jak porównać artykuły, aby stwierdzić, które z nich są ze sobą powiązane tematycznie ?
Czy pisaliście kiedyś coś podobnego ? (i jak rozwiązaliście problem)
Czy np. system zliczania słów byłby dobrym rozwiązaniem ?

Dodam, że mój artykuł jest takim oto rekordem :

data timestamp(14),
id int(11) not null auto_increment primary key,
autor char(255),
dzial char(255),
tresc longtext,
tytul char(255)
Fipaj
Myślę, że można sprawdzić, w którym artykule to słowo występuje w tytule i u którego autora jest najwięcej artykułów z takim słowem kluczowym w tytule, wyliczyć z tego średnią i jest...

Prawdopodobnie najlepszym, ale katującym serwer sposobem byłoby zliczanie takich słów w artykułach, hmm, może zaangażować do tego jakiś silniczek wyszukiwarki, może Zend_Search_Lucene?

A może już masz już jakąś starą bazę połączeń między artykułami (np. statystyki, kto z jakiego artykułu skakał do innego, taka ścieżka odwiedzającego), wtedy z czegoś takiego też można by to oczywiście wyliczyć.

Moje pomysły. Ale zastanów się nad prostym skatalogowaniem artykułów w *kategorie* albo *tagi*, i linkuj do tzw. stron ujednoznaczniających, które wybierałyby najbardziej prawdopodobny artykuł, a na podstawie kategorii/tagów dobierały kilka podobnych, do wyboru, do koloru.

Pomogłem?
nabuchodonozor_plt
troszkę biggrin.gif , jeśli chodzi o kategorię/tagi to wolałbym tego uniknąć, ponieważ :
  • musiałoby być tego bardzo dużo
  • z doświadczenia wiem, że jak jest za dużo różnych kategorii to denerwują one użytkowników

Chodzi mi konkretnie o podpinanie linków w tekście.
Cytat
kto z jakiego artykułu skakał do innego

bazy nie mam... ale to mi nasunęło pewną myśl... kiedyś w C++ bawiłem się sieciami neuronowymi, możnaby za ich pomocą wyszukać podobne artykuły...

Jakieś inne sugestie ?
Jakieś algorytmy ? (można np. wykożystywać nagłówki w artykułach)
Fipaj
Ciut wtrącę, ale już na koniec, bo pewnie wiele więcej nie wniosę...

a) raczej nie zbyt wiele kategorii, ale zbyt niejasne ich opisanie denerwują użytkowników ;-)
cool.gif tagi z kolei mogą być nawet cholernie niejasne, a i tak nie tylko pomogą, ale jeszcze użytkownicy sami ci je dopiszą -> http://pl.wikipedia.org/wiki/Tag_cloud
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.