Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Wyszukiwarka wg gatunku
trebron
post 2.08.2022, 13:16:39
Post #1





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 8.11.2020

Ostrzeżenie: (0%)
-----


Witam.
Chcę dodać do wyszukiwarki kryterium wyszukiwania wg gatunków muzycznych i filmowych. Problem w tym, że tych gatunków jest ponad 100 i kod zajmował by około 1000 lini. Czy jest możliwość zdefiniować gatunki w inny krótszy sposób niż ten ktory podaję poniżej dla jednego gatunku- Akcja? Dodam, że do każdej pozycji muzycznej czy też filmowej można dodać 3 kategorie i w bazie wystepują jako gat1, gat2, gat3.
  1. if ($_GET["gat"] == 1){
  2. $addparam .= "gat=1&";
  3. $wherea[] = "gat1 = 'Akcja' || gat2 = 'Akcja' || gat3 = 'Akcja'";
  4. }

Wybór w wyszukiwarce:
  1. <select name="gat" style="width: 110px;">
  2. <option value="0" selected="selected">Gatunek</option>
  3. <option value="1"<? print($_GET["gat"] == 1 ? " selected" : ""); ?>>Akcja</option>
  4. </select>


Ten post edytował trebron 2.08.2022, 13:17:51
Go to the top of the page
+Quote Post
nospor
post 2.08.2022, 15:46:08
Post #2





Grupa: Moderatorzy
Postów: 36 440
Pomógł: 6290
Dołączył: 27.12.2004




A skad sie wzielo to "Akcja" ?

Tak czy siak, pomijajac te AKCJA, to powinno to wygladac poprostu tak

  1. if (!empty($_GET["gat"])){
  2. $addparam .= "gat=" . (int)$_GET["gat"];
  3. $wherea[] = "gat1 = 'Akcja' || gat2 = 'Akcja' || gat3 = 'Akcja'";
  4. }

I juz, zadne 1000 linii nie potrzeba. oczywiscie moze sie to troche zmienic jesli ta AKCJA jest jakos dynamiczna


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
trebron
post 2.08.2022, 23:21:26
Post #3





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 8.11.2020

Ostrzeżenie: (0%)
-----


"Akcja" to jeden z gatunków filmowych a jest ich ponad 100, np komedia, thriller, romans. Kazdy opis filmu może mieć nawet 3 gatunki a gatunek "Akcja" może się znajdować w jednym z tych 3 gatunków. Do kazdego gatunku muszę utworzyć kod podobny do tego ktory podałem lub Ty podałeś dla gatunku "Akcja" więc dla wszystkich gatunków bedzie kilkaset lini kodu. Stąd moje pytanie czy nie da się tego uprościć w jakiś sposób, np żeby w skrypcie wszystkie gatunki wpisać w jednej linii a nie dla każdego gatunku osobno.

Ten post edytował trebron 2.08.2022, 23:31:41
Go to the top of the page
+Quote Post
gino
post 3.08.2022, 06:46:59
Post #4





Grupa: Zarejestrowani
Postów: 319
Pomógł: 52
Dołączył: 18.02.2008

Ostrzeżenie: (0%)
-----


Przypuszczam, że jest to jakaś baza danych, to albo jest źle zrobiona, albo Ty czegoś nie rozumiesz. Podajesz gatunek a zapytanie oddaje Ci wszystkie filmy spełniające ten warunek. Kilkanaście linii kodu, bez żadnych pośrednich tablic czy sklejania zmiennych.
Go to the top of the page
+Quote Post
trebron
post 3.08.2022, 07:54:50
Post #5





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 8.11.2020

Ostrzeżenie: (0%)
-----


Cytat(gino @ 3.08.2022, 07:46:59 ) *
Przypuszczam, że jest to jakaś baza danych, to albo jest źle zrobiona, albo Ty czegoś nie rozumiesz. Podajesz gatunek a zapytanie oddaje Ci wszystkie filmy spełniające ten warunek. Kilkanaście linii kodu, bez żadnych pośrednich tablic czy sklejania zmiennych.

Tak jestem zielony i nie rozumiem, dlatego proszę o pomoc smile.gif Chcę dodać w wyszukiwarce wybor jak na screenie https://i.imgur.com/25FjBxI.png
Czyli powinno wyglądać to w ten sposób bez wpisywania gatunku?
  1. if (!empty($_GET["gat"])){
  2. $addparam .= "gat=" . (int)$_GET["gat"];
  3. $wherea[] = "gat1 = '' || gat2 = '' || gat3 = ''";
  4. }


Go to the top of the page
+Quote Post
trueblue
post 3.08.2022, 07:59:19
Post #6





Grupa: Zarejestrowani
Postów: 6 761
Pomógł: 1822
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


https://helion.pl/pobierz-fragment/cwac16/pdf


--------------------
Go to the top of the page
+Quote Post
trebron
post 3.08.2022, 08:23:23
Post #7





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 8.11.2020

Ostrzeżenie: (0%)
-----


Nie rozumiecie mnie. Nie mam w bazie zrobionej tabeli z gatunkami. W bazie z filmem czy muzyką są dodane gatunki w formie tekstu https://i.imgur.com/WwFkjDj.png i aby ten film czy muzyka został odnaleziony to chyba trzeba wpisać w kodzie gatunek.

Ten post edytował trebron 3.08.2022, 08:36:53
Go to the top of the page
+Quote Post
viking
post 3.08.2022, 08:42:44
Post #8





Grupa: Zarejestrowani
Postów: 6 365
Pomógł: 1114
Dołączył: 30.08.2006

Ostrzeżenie: (0%)
-----


A czemu tego nie zrobiłeś jak człowiek z relacjami?
filmy -> id_filmu
gatunki -> id_gatunku
filmy_gatunki -> id_filmu, id_gatunku


--------------------
Go to the top of the page
+Quote Post
trebron
post 3.08.2022, 09:07:43
Post #9





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 8.11.2020

Ostrzeżenie: (0%)
-----


Tak było od wielu lat, ja tego nie robiłem smile.gif. Wiec innego sposobu nie ma, trzeba by dodać gatunki do bazy i wtedy wyszukiwanie po id, w przeciwnym wypadku trzeba by pisać za duzo linijek a to odpada.
Go to the top of the page
+Quote Post
nospor
post 3.08.2022, 09:09:25
Post #10





Grupa: Moderatorzy
Postów: 36 440
Pomógł: 6290
Dołączył: 27.12.2004




To gdzie przechowywane teraz sa gatunki? W jakiejs tablicy? Czy moze co gorsza tylko w tym pole select w formularzu?


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
trebron
post 17.08.2022, 12:07:30
Post #11





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 8.11.2020

Ostrzeżenie: (0%)
-----


Tylko w formularzu, ale teraz juz wiem, że trzeba gatunki utworzyć w bazie aby mozna było wg nich wyszukiwać.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 28.03.2024 - 12:41