![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 544 Pomógł: 5 Dołączył: 18.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
Chcę na stronie zrobić ramkę "Zobacz też" przy każdym newsie. W ramce byłyby prezentowane 3 podobne tematycznie inne wiadomości. Oparte miałoby to być na tagach, tak chyba najłatwiej. W każdym newsie mam pole 'tagi' i tam wypisuje je po przecinku. Jak zrobić żeby spośród tych tagów wybierało te ważniejsze (czyli te które są napisane w pierwszej kolejności) i wg nich szukało w bazie innych newsów, które mają ten sam tag gdzieś na początku. Sortowane były od najnowszych. Jak ułożyć zapytanie żeby wybierało najbardziej trafne tematy pokrewne? Chyba nie ma sensu stosować wyszukiwania full text na tagach/tytule?
|
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 527 Pomógł: 438 Dołączył: 28.06.2011 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Zgadzam się z @up - to w ogóle nie powinno być w ten sposób zrobione, że masz tagi w jednym polu po przecinkach. Dużo lepsze i wydajniejsze okazuje się utworzoenie osobnej tabelki tagów oraz tabeli wiązań - tak zwana relacja "n do n". Wtedy również możesz łatwo i sprytnie wygenerować chmurki tagów - co w twoim aktualnym kodzie jest nieco cięższe.
Moja propozycja - przerób to - zrób te dwie tabelki - tagi i powiązania. Przeleć całą bazę i powrzucaj odpowiednio tagi. Następnie zaktualizuj swój kod tak by przy dodawaniu newsa tworzył odpowiednie rekordy w tych tabelkach (bez duplikowania tagów). Wyszukiwanie po czymś takim jest proste i daje zamierzone rezultaty. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 3.10.2025 - 22:12 |