|
|
php, mysql, skrypt - slowa kluczowe, tagi
|
|
|
Strona 1 z 1
|
ml0dy [DaRk_^_$iDe]
::: 3088 :::
STEAM_0:0:4364171
wiek: 36
|
Pomozcie!
chcialbym zrobic serwis, ktory umozliwia dodanie jakiegos wpisu.
przypisujemy wpis do kategorii, a oprocz tego mozemy dodac tagi, slowa kluczowe, po ktorych dany wpis tez zostanie odszukany... (kategorie ogolne poprostu sa, tagi lepiej potrafia odnalezc poszukiwany przez nas wpis).
nigdzie ni cholery nie moge znalezc pomyslu jak to rozwiacac.
czy w tabeli w sqlu tam gdzie beda umieszczane wpisy, zrobic pole keywords, w ktorym slowa pooddzielane sa np przecinkiem? i w razie wyszukiwania wykorzystac poleenie LIKE? tylko jak ew. zrobic tak, zeby sprawdzic najpopularniejszy skrypt? (domyslam sie ze musi pokolei lapac slowa i albo dodawac +1 do ilosci pozycji w ktorych zawarte nowe slowo, albo dodanie nowej pozycji, potem wyswietlenie ok 20 pozycji najczvesciej wystepujacych).
takie "wyszukiwanie" slow najczesciej wystepujacych, oczywiscie uruchamiane bylo by recznie z poziomu administratora serwisu, bo kazde wyswietlenie strony obligowalo by w obciazenie w niepotrzebna moc obliczeniową...
ma ktos jakies propozycje/pomysly/linki? nic ni cholery nie potrafilem wygooglowac, co by mi moglo pomoc :-/
............................................ Pon Paź 12, 2009 2:23 pm
|
|
|
kedrigen call 911
::: 1566 :::
STEAM_0:1:268445
wiek: 35
|
foreach($arKeyWords as $strKeyWord) {
mysql_insert(bla bla bla kod SQL razem z id wpisu)
}
i teraz polecenie sql
$query = "SELECT cosID from keywords where keyword='".$keyword."'";
............................................ Pon Paź 12, 2009 5:57 pm
|
|
|
ajt Mr. Foch
::: 2671 :::
STEAM_0:1:12257932
wiek: 36
|
Nie za bardzo wiem o co ci chodzi młody ;f
Insert nie w ten sposób, bo zabije.
Zapytanie robisz w foreach, a potem wysyłasz jednym cięgiem.
Kod: |
$query = "INSERT INTO dupa(`pole1`, `pole2`) VALUES(1,2), (2,5), (2,90)" |
............................................ Pon Paź 12, 2009 9:47 pm
|
|
|
ml0dy [DaRk_^_$iDe]
::: 3088 :::
STEAM_0:0:4364171
wiek: 36
|
tzn, ja nie pytam o kod, o sposoby, to to ja sobie poradze
BTW, wygodniej uzywac FOREACH, a mniejsza zlozonosc obliczeniową ma FOR... mi chodzi o istote, sposob zrealizowania tego.
wiec jeszcze raz od poczatku,
umieszczam przykladowo wpisy do bazy, ID, NAME, ADRES, KEYWORDS,
w KEYWORDS wszystkie kluczowe slowa, przypisane do danego wpisu, przykladowo oddzielone przecinkiem (pozniem implode explode zastosowac i wszystkie beda w jednej tablicy przykladowo $keyWords[]). pozniej ew. wyswietlenie wszystkich wpisow, gdzie w keyWords jest slowo np: "pilka" i "bramka", wyswietli mi tylko wyniki, gdzie te slowa sa w keywords wraz z przykladowo innymi.
chodzi mi o tagi, slowa kluczowe, za pomoca ktorych bedzie sie szukalo osob, wpisow itp, o sposob realizacji tej funkcjonalnosci
mysle ze mam idee na to, ale nie wiem czy dobrze do tego podszedlem
ajt, wiem o co kamon,
mi chodzi o porade, w jaki sposob mozna to rozwiazac, jakies pomysly - gotowe przyklady, czy ew, wszystko sie opiera na sposobie, jaki ja przedstawilem wyzej?
............................................ Pon Paź 12, 2009 10:25 pm
|
|
|
hudys Pingwiniasty
::: 1909 :::
STEAM_0:0:21641756
wiek: 31
|
Sposobów jest kilka, aczkolwiek twój będzie chyba najszybszy Można to zrobić na piechote, relacje między tabelami np.
Kod: |
linki:
id, url, nazwa
tagi:
id, id_url, tag |
Tylko nie wiem czy ma to sens, bo czasochłonne to będzie, jeżeli ilość wpisów dojdzie do kilku tysięcy. Sprawdź jak działają podobne systemy (np. Wordpress ma takie coś)
............................................ Pon Paź 12, 2009 10:32 pm
|
|
|
ml0dy [DaRk_^_$iDe]
::: 3088 :::
STEAM_0:0:4364171
wiek: 36
|
a w sumie racja, zainstaluje jakis gotowy skrypt i bede walczyl
............................................ Pon Paź 12, 2009 10:43 pm
|
|
|
Mider Zasadzka
::: 4151 :::
STEAM_0:0:1039742
wiek: 54
|
A czemu ma służyć stosowanie dodatkowych tagów?
Taki bierz z opisu i twórz dynamiczną bazę. Dzięki temu będą się robić niejako same.
Jeśli chodzi o sposób gromadzenia/wyszukiwania danych to proponuję się zapoznać z funkcjami Full-Text Search. Jeśli będzie to zbyt obciążające to rób wyszukiwanie dwustopniowe.
1. tablice relacyjne jedna ze słowami kluczowymi druga z relacjami słowo->artykuł
2. jeśli odpowiedzi jest za mało, albo są niezadawalające full-text search
Do wyszukiwania szybsze jest LIKE, ale RLIKE daje większe możliwości.
............................................ Pon Paź 12, 2009 10:53 pm
|
|
|
|
Strona 1 z 1
|
|
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach
|
|
|
|