![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 266 Pomógł: 0 Dołączył: 4.01.2007 Skąd: Szczecin Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Dodaje artykuł z tagami, jest to pole tags w bazie. Zapisuje w nim tagi w następujący sposób: tag1,tag2,tag3 Podczas dodawania nowych artykułów chce, aby wyszukiwało i podpowiadało względem szukanej frazy, bez duplikatów. Jak to osiągnąć? Próbowałem zwykłym LIKE "%ta%", ale wartości są po przecinku i pokazuje całość w danym polu. |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 800 Pomógł: 1827 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
-------------------- |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 266 Pomógł: 0 Dołączył: 4.01.2007 Skąd: Szczecin Ostrzeżenie: (0%) ![]() ![]() |
Hmmm... przeczytałem wątek i nie rozumiem...
niby chce rozdzielić, a concat mi łączy. Takie coś wymodziłem: SELECT tags FROM articles WHERE tags LIKE '%mus%' GROUP BY tags Z tym, że zamiast wyświetlić mi tagi: music muss mus... etc. wyświetla wszystkie rekordy gdzie jest tag music, np. movie,music,cinema |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 218 Pomógł: 16 Dołączył: 6.06.2014 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Bo jak masz w jednym rekordzie kilka tagow to on te kilka wyciagnie. To ma byc dynamiczne?
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Dlaczego nie masz zwykłej relacji wiele-do-wielu pomiędzy artykułami i tagami tylko jakieś nic nie znaczące (z punktu widzenia bazy danych) teksty?
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 266 Pomógł: 0 Dołączył: 4.01.2007 Skąd: Szczecin Ostrzeżenie: (0%) ![]() ![]() |
No właśnie nie chciałem oddzielnej tabeli do tagów i widzę to był błąd (?)
Ten post edytował SN@JPER^ 10.06.2015, 21:56:47 |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Tak, to był błąd. Powinieneś mieć tabelę artykułów (id, tytuł, ...), tagów (id, nazwa, ...) oraz łączącą (id_artykułu, id_tagu). Wtedy nie będziesz miał takich problemów z trywialnymi zadaniami.
|
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 266 Pomógł: 0 Dołączył: 4.01.2007 Skąd: Szczecin Ostrzeżenie: (0%) ![]() ![]() |
Mam dodanych już 1500 artykułów, da się to zrobić tak jak mowilem? Rozdzielajac w sql?
|
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
To napisz sobie prosty skrypt, który przerobi obecne, kulawe rozwiązanie na normalne. Zajmie Ci to zapewne 2 razy mniej czasu niż kombinowanie przy obecnej strukturze.
|
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 266 Pomógł: 0 Dołączył: 4.01.2007 Skąd: Szczecin Ostrzeżenie: (0%) ![]() ![]() |
Tak to mam napisane...
in_array wykorzystuje
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 24.06.2025 - 13:23 |