Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Wyszukiwarka na stronie
Forum PHP.pl > Forum > Przedszkole
abel1
Mam sobie taką wyszukiwarkę
  1. $key=$_POST["key"];
  2. if(!empty($key)){
  3. try
  4. {
  5. $polaczenie = new PDO(DB_DRIVER . ":dbname=" . DB_DATABASE . ";host=" . DB_SERVER, DB_USER, DB_PASSWORD);
  6.  
  7. $polaczenie->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  8.  
  9. $zapytanie = $polaczenie->query("SELECT*FROM kanal");
  10. while ($row = $zapytanie->fetch())
  11. {
  12. if(strstr(strtolower($row["nazwa_kanal"]),strtolower($key))){
  13.  
  14. $kanal=$row["nazwa_kanal"];
  15. $user_kanal=$row['user'];
  16. $pom="<font color=\"ff0000\">".$key."</font>";
  17. $kanal=str_replace($key,$pom,$kanal);
  18. echo '<div class="wynik" >wyświetka wynik <hr class="hr" ></div>';
  19. }
  20. }
  21. if(!@$kanal){echo'<div class="wynik1" >barak tego co szukasz <hr class="hr" ></div>';}
  22. }
  23. catch(PDOException $e)
  24. {
  25. die('Unable to connect: ' . $e->getMessage());
  26. }
  27. $polaczenie=null;


Działa powiedzmy dobrze ale tylko w przypadku wyszukiwania w jednej kolumnie
Prosze o podpowiedź naprowadzenie mnie jak zmodyfikować ją żeby wyszukiwała w większej ilości kolumn w tej samej tabeli oczywiście
markonix
Ale bzdurny kod.. Po co w ogóle ta pętla skoro można szukanie oprzeć zgodnie ze sztukę na poziomie ZAPYTANIA DO BAZY.

Robisz odpowiednio WHERE `pole` = 'Szukana fraza' OR itd.
Znak równości można zmienić na LIKE %fraza% celem wyszukiwania także fragmentu.
abel1
tak wiem że można tak zrobić
Nawet próbowałem zrobić wyszukiwanie w bazie za pomocą zapytania ,ale coś mi to nie za bardzo wychodzi
Nie wyszukuje tylko wyświetla wszystko jak leci
Ale to zapewne dlatego że nie bardzo wiem jak napisać kod
Był bym niezmiernie wdzięczne za pomoc w napisaniu wyszukiwarki która wyszuka w kilku kolumnach
Powinno wyszukiwać w 5 kolumnach jednej tabeli
emstawicki
Cytat(abel1 @ 5.10.2016, 12:01:07 ) *
tak wiem że można tak zrobić
Nawet próbowałem zrobić wyszukiwanie w bazie za pomocą zapytania ,ale coś mi to nie za bardzo wychodzi
Nie wyszukuje tylko wyświetla wszystko jak leci
Ale to zapewne dlatego że nie bardzo wiem jak napisać kod
Był bym niezmiernie wdzięczne za pomoc w napisaniu wyszukiwarki która wyszuka w kilku kolumnach
Powinno wyszukiwać w 5 kolumnach jednej tabeli


To może podaj nam strukturę tabeli i zapytanie, którego używałeś.
abel1
zapytanie miałem najpierw tak
  1. SELECT * FROM tabela WHERE LIKE '%$zmienna%'

Nie wyświetlało mi to prawidłowo zmieniłem zapytanie
  1. SELECT * FROM tabela WHERE kolumna , kolumna , kolumna ,kolumna , kolumna LIKE '%$zmienna%'

To niestety też mi nie zadziałało
Ale wydaje mi sie że nie działało to tylko dla tego że reszta kodu była błędna, Niestety nie wiem jak to zrobić
Pisałem to tak jak zwykle robie połaczenie do bazy

  1. try
  2. {
  3. $polaczenie = new PDO(DB_DRIVER . ":dbname=" . DB_DATABASE . ";host=" . DB_SERVER, DB_USER, DB_PASSWORD);
  4.  
  5. $polaczenie->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  6.  
  7. $zapytanie = $polaczenie->query("SELECT * FROM tabela WHERE LIKE '%$zmienna%'");
  8.  
  9. while ($row = $zapytanie->fetch())
  10. {
  11. $kolumna1 = $row['kolumna1']
  12. $kolumna2 = $row['kolumna2']
  13. $kolumna3 = $row['kolumna3']
  14. $kolumna4 = $row['kolumna4']
  15. $kolumna5 = $row['kolumna5']
  16. }


Struktura tabeli wygląda następująco , poniżej nagłówki tabel w których ma odbyć się wyszukiwanie


Naprawdę będę bardzo wdzięczny za pomoc w napisaniu działającej wyszukiwarki
markonix
Jeżeli się czegoś nie potrafi to się czyta, wzoruje na przykładach, a te Twoje zapytania nie mają żadnego sensu.
5 sekund googlowania:
http://stackoverflow.com/questions/2514548...olumns-in-mysql
abel1
chętnie bym się na tym przykładzie oparł ale to nic nie daje
Napisałem zapytanie na wzór który podałeś ale brak efektu
  1. try
  2. {
  3. $polaczenie = new PDO(DB_DRIVER . ":dbname=" . DB_DATABASE . ";host=" . DB_SERVER, DB_USER, DB_PASSWORD);
  4. // set the PDO error mode to exception
  5. $polaczenie->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  6.  
  7. $zapytanie = $polaczenie->query("SELECT*FROM kanal WHERE nazwa LIKE '%key%' AND nazwa_kanal LIKE '%key%' AND nazwa_kanal1 LIKE '%key%' AND nazwa_kanal2 LIKE '%key%' AND nazwa_kanal3 LIKE '%key%'");
  8.  
  9. while($row = $zapytanie->fetch())
  10. {
  11. $nazwa = $row['nazwa'];
  12. $nazwa_kanal = $row['nazwa_kanal'];
  13. $nazwa_kanal1 = $row['nazwa_kanal1'];
  14. $nazwa_kanal2 = $row['nazwa_kanal2'];
  15. $nazwa_kanal3 = $row['nazwa_kanal3'];
  16.  
  17. echo $nazwa .'<br>'.$nazwa_kanal.'<br'.$nazwa_kanal1.'<br'.$nazwa_kanal2.'<br'.$nazwa_kanal3;
  18. }
  19. }
  20. catch(PDOException $e)
  21. {
  22. die('Unable to connect: ' . $e->getMessage());
  23. }
  24. $polaczenie=null;

W taki sposób też nic się nie dzieje
  1. @$key=$_POST["key"];
  2. if(!empty($key)){
  3. try
  4. {
  5. $polaczenie = new PDO(DB_DRIVER . ":dbname=" . DB_DATABASE . ";host=" . DB_SERVER, DB_USER, DB_PASSWORD);
  6. // set the PDO error mode to exception
  7. $polaczenie->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  8.  
  9. $zapytanie = $polaczenie->query("SELECT nazwa, nazwa_kanal, nazwa_kanal1,nazwa_kanal2, nazwa_kanal3 FROM kanal WHERE nazwa LIKE '%key%' AND nazwa_kanal LIKE '%key%' AND nazwa_kanal1 LIKE '%key%' AND nazwa_kanal2 LIKE '%key%' AND nazwa_kanal3 LIKE '%key%'");
  10.  
  11. while($row = $zapytanie->fetch())
  12. {
  13. $nazwa = $row['nazwa'];
  14. $nazwa_kanal = $row['nazwa_kanal'];
  15. $nazwa_kanal1 = $row['nazwa_kanal1'];
  16. $nazwa_kanal2 = $row['nazwa_kanal2'];
  17. $nazwa_kanal3 = $row['nazwa_kanal3'];
  18.  
  19.  
  20. }
  21. echo $row['nazwa'] .'<br>'.$row['nazwa_kanal'].'<br'.$row['nazwa_kanal1'].'<br'.$row['nazwa_kanal2'].'<br'.$row['nazwa_kanal3'];
  22. }
  23. catch(PDOException $e)
  24. {
  25. die('Unable to connect: ' . $e->getMessage());
  26. }
  27. $polaczenie=null;
  28. }

Nie ma błędu ale też nie ma efektu , najzwyczajniej tak jak bym nic nie robił
emstawicki
Oprócz tego od razu zerknij w manual nt. bindowania
pdostatement.bindparam
abel1
wiem jak bindować ale co tu bindować skoro to nie chce mi działać i nie wiem dlaczego
Najpierw musi to działać żeby móc bindować cokolwiek i gdziekolwiek
viking
Teraz jeszcze to echo wrzuć do pętli while.
var_dump($key) co zwraca?
szydlak
w zapytaniu masz w warunku wszędzie AND czyli jeśli jedno nie jest spełnione to masz pusty wynik, raczej powinieneś mieć "or"
abel1
Dawałem "AND" ale dawałem też "OR" ten sam rezultat
To echo
  1. echo $nazwa .'<br>'.$nazwa_kanal.'<br'.$nazwa_kanal1.'<br'.$nazwa_kanal2.'<br'.$nazwa_kanal3;

Miałem i w pętli while i poza nią ,taki sam efekt czyli brak reakcji

"var_dump($key);" zwraca dokładnie to co wpisuje , niezależnie gdzie go umieszczę czy w pętli czy poza pętlą
Próbowałem też tak
  1. echo $row['nazwa'] .'<br>'.$row['nazwa_kanal'].'<br'.$row['nazwa_kanal1'].'<br'.$row['nazwa_kanal2'].'<br'.$row['nazwa_kanal3'];

W pętli i poza to samo brak efektu , brak błędu
  1. var_dump($row['nazwa']);

czy w pętli czy poza nie wyświetla się nic
Nie wiem co sie dzieje var_dump() powinien wyświetlic coś przynajmniej "NULL" a tu nic
szydlak
a w zapytaniu przy %key% brakuje znaku $. I ma być w warunku or jeśli wystarczy że szukany ciąg ma być w jakiejkolwiek kolumnie.
PDO
emstawicki
Wyświetlanie i raportowanie błędów masz włączone?
zamykaj znaczniki <br
abel1
tak racja moje przeoczenie , siedzę nad tą wyszukiwarką już 5 dni i nadal nie działa tak jak powinna
Teraz wypluwa wybiórczo , to znaczy:
pierwszy user w bazie ma powiedzmy 4 pasujące do zapytania pozycje i je pokazuje ,ale pokazuje też pozycje która nie ma pasuje do zapytania
od kolejnego usera nie pokazuje niczego mimo że ma pasujące , od następnego pokazuje tylko jedną pozycje
od kolejnego pokazuje wszystkie
Podsumowując wyświetliło 10 wyników z czego 5 jest błędna
  1. try
  2. {
  3. $polaczenie = new PDO(DB_DRIVER . ":dbname=" . DB_DATABASE . ";host=" . DB_SERVER, DB_USER, DB_PASSWORD);
  4. // set the PDO error mode to exception
  5. $polaczenie->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  6.  
  7. $zapytanie = $polaczenie->query("SELECT nazwa, nazwa_kanal, nazwa_kanal1,nazwa_kanal2, nazwa_kanal3 FROM kanal WHERE nazwa LIKE '%$key%' OR nazwa_kanal LIKE '%$key%' OR nazwa_kanal1 LIKE '%$key%' OR nazwa_kanal2 LIKE '%$key%' OR nazwa_kanal3 LIKE '%key%'");
  8.  
  9. while($row = $zapytanie->fetch())
  10. {
  11.  
  12. echo $row['nazwa'] .'<br>'.$row['nazwa_kanal'].'<br>'.$row['nazwa_kanal1'].'<br>'.$row['nazwa_kanal2'].'<br>'.$row['nazwa_kanal3'];
  13.  
  14. }
  15.  
  16. }
  17. catch(PDOException $e)
  18. {
  19. die('Unable to connect: ' . $e->getMessage());
  20. }
  21. $polaczenie=null;

Raportowanie błędów oczywiście mam włączone
to mam na samym początku pliku jeszcze przed startem sesji
  1. ini_set( 'display_errors', 'On' );
  2. error_reporting( E_ALL );

szydlak
Nie rozumiem za bardzo o co chodzi z userem. A w ostatnim like też nie masz $
abel1
Zaraz wytłumaczę
Pisze stronke na której będzie można sie zarejestrować i tworzyć własne że tak to nazwie kanały
Daj my na to że rejestruje sie jakiś user i może wstawiać swoje filmiki czy inne tam
jeden filmik to jeden kanał ( powiedzmy wstawia film z meczu z kolegami na orliku), kanał nazywa się "Mój pierwszy gol"
Ale jak wspomniałem jeden user może mieć więcej filmików a każdy z nich jest jako osobny "kanał"
Jak wpisze w wyszukiwarkę słowo "gol" ma znaleźć wszystko co do tego pasuje
A kod który teraz mam po wpisaniu "gol" wypluwa to co chce
Wpisuje "gol" a w wyniku mam

Taka sobie ściema
Mój pierwszy gol
Kiedyś grałem
Gol i gol
Goli cała masa

Nie wiem czy dobrze sie wyraziłem , ale w wyniku nie powinno się znaleźć
"kiedyś grałem" bo nijak to nie pasuje do zapytania
szydlak
To po co Ci tyle kolumn z nazwą kanałów ?
jak dla mnie tabela z kanałami to kolumny: id (autoinc) nazwa kanału, id_user. Druga tabela to users z kolumnami: id, nazwa uzytko, np haslo i dalej według potrzeb. Czyli to co potrzebne przy rejestracji.
Potem odpowiednie zapytanie select dla danego uzytkownika. A z ciekawości jak to robisz ze dla danego uzytkownika cos pokazuje a dla innego nie ? Zmieniasz usera na polaczeniu ?
abel1
tabelka wygląda następująco i tak według mojej wiedzy być musi

  1. ID | USER | link | link1 | link2 | link3 | link4 | nazwa | nazwa_kanal | nazwa_kanal1 | nazwa_kanal2 | nazwa_kanal3

Jak widzisz kolumna "link" i kolumna "nazwa" odpowiada jednemu kanałowi
Być może nie jest to idealne ale działa
A ja chce wyszukiwać w kolumnach
  1. nazwa | nazwa_kanal | nazwa_kanal1 | nazwa_kanal2 | nazwa_kanal3

Te kolumny zawierają nazwy kanałów i ma wyszukiwać nazwy kanałów które następnie podlinkuje

Cytat
A z ciekawości jak to robisz ze dla danego uzytkownika cos pokazuje a dla innego nie ? Zmieniasz usera na polaczeniu ?

Nie rozumiem pytania
Masz na myśłi jak wyświetlam kanał usera ?
szydlak
A według mnie każdy kanał to osobny rekord powinien być. Wydaje mi się że masz takie wyniki wyszukiwania właśnie przez strukture tabeli. Taka struktura będzie Ci tylko komplikować wszystko. Tabela z kanałami to: id, id_user, nazwa_kanalu, url.
a potem select from kanaly where nazwa like %$key%. Wyświetlenie wyników zrobisz jak chcesz w php
abel1
Być może ta tabela jest źle skonstruowana , jie jestem ekspertem
Ale przy konstrukcji jaką ty zaproponowałeś nie widzę możliwości dodania przez jednego usera więcej jak jednego kanału
Zakładając taka sytuacje
1 user tworzy kanał zapisuje nazwe i link do filmu
mam wtedy w bazie w wierszu usera kolumnie "nazwa" nazwe jego kanału
A jeżeli zechce zapisać kolejny kanał ?
Jak to rozwiązać ?
przy próbie zapisania kolejnego kanału komórka tabeli się nadpisze
Można by zrobić zapytanie które najpierw pobierze zawartość komórki następnie doda do tego co właśnie user próbuje dodać i zapisze do bazy oba rekordy
Ale powstaje następny problem
Mam na stronie player który odtwarza te filmiki z linków rtmp , czyli w kolumnie link zapisuje się tak naprawdę rtmp filmu
Jeżeli w jednej komórce będzie więcej jak jedno rtmp to znowu jak załadować do playera tylko to konkretne ?
Wyprzedzę kolejne wątpliwości
Link trtmp może mieć postać
rtmp://192.168.0.1/live/moj_mecz
ale równie dobrze user może mieć ten sam filmik z takim rtmp
rtmp://192.168.0.1/live/q7wee6w5
Nie sposób przewidzieć jak zostanie nazwane a zatem nie sposób załadować wybranej pozycji
Podsumowując tabela musi zawierać tyle kolumn ile user może dodawać kanałów
nospor
Nie zrozumiales...
Masz wywalic z tabeli usera wszystkie kolumny z kanalami. Ich ma tam nie byc.
Na kanaly masz stworzyc nowa tabele o nazwie powiedzmy KANALY, czyli bedziesz mial dwie tabele

USER
ID | LOGIN | BLABLA

KANAL
ID | ID_USER | NAZWA | LINK

I teraz jeden user moze miec nawet 10 rekordow w tabeli kanal. Kazdy rekord to oddzielny kanal.

Tak sie pisze poprawnie tego typu rzeczy.
szydlak
A polecenie insert nie nadpisuje tylko wstawia nowy rekord. Po twoich wypowiedziach widać że nie rozumiesz do końca relacji w bazie. Tutaj takie proste wytłumaczenie tematu: Bazy danych
abel1
zrobiłem tak
ID | USER | NAZWA | LINK


Kurcze ale w takim razie jak teraz dopasuje rtmp do playera ?

W takim układzie każdy kanał będzie się zapisywał w osobnym wierszu czyli user o ID=5(w tabeli user) dajmy na to będzie występował w tej tabeli pod ID= 2 ale też ID=50

Nie mam pomysłu jak teraz wydobyć konkretny link ?
Bo musiał bym wiedzieć ID danego linku
Napisałem takie zapytanie do bazy
  1. try {
  2. $polaczenie = new PDO(DB_DRIVER . ":dbname=" . DB_DATABASE . ";host=" . DB_SERVER, DB_USER, DB_PASSWORD);
  3.  
  4. $polaczenie->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  5. $zapytanie = $polaczenie->query("SELECT * FROM uzytkownicy u LEFT OUTER JOIN kanaly k ON u.user=k.user WHERE user='$user'");
  6. SELECT * FROM kanaly WHERE user='$user'
  7. while($row = $zapytanie->fetch())
  8. {
  9. $id = $row['id'];
  10. $rtmp_link=$row['link'];
  11. $nazwa = $row['nazwa'];
  12. }
  13.  
  14. }
  15. catch(PDOException $e)
  16. {
  17. echo $zapytanie. "<br />" . $e->getMessage();
  18. }
  19. $polaczenie = null;

Ono wyciągnie z bazy wszystko , tylko jak teraz dopasować link do playera ?
Myślę że trzeba w jakiś sposób sprawdzić czy $nazwa, $rtmp_link mają to samo $id
Tylko nie mam pomysłu jak to zrobić
nospor
Poprostu dodaj do zapytania szukanie tez nazwy

$polaczenie->query("SELECT * FROM uzytkownicy u
LEFT OUTER JOIN kanaly k ON u.user=k.user
WHERE user='$user' and k.nazwa like '%$szukananazwa%'");
abel1
Pomińmy chwilowo problem wyszukiwania
To rozwiązanie ma na moje oko poważną wadę
Mianowicie , jest tylko jedna kolumna z kanałami . Jak jeden user doda więcej kanałów to w jaki sposób teraz wyświetlę żądany kanał ?
nie mam pomysłu jak pobrać konkretne rtmp z bazy , znając tylko nick usera
viking
Posługujesz się wtedy joinami. Jest to podstawowe zapytanie do pracy na relacyjnych bazach danych. Nospor napisał jak to zrobić więc jaki teraz jest problem?
szydlak
Cytat(abel1 @ 6.10.2016, 23:00:30 ) *
Mianowicie , jest tylko jedna kolumna z kanałami . Jak jeden user doda więcej kanałów to w jaki sposób teraz wyświetlę żądany kanał ?
nie mam pomysłu jak pobrać konkretne rtmp z bazy , znając tylko nick usera



select from kanaly where user='$id"

A co znaczy żądany kanał ? Konkretna nazwa? konkretny numer ? mało precyzyjnie zadajesz pytanie
abel1
Tak wyglada baza danych z przykładowymi wpisami

Kod
ID  |  USER     |           LINK                    |  NAZWA

1       kwikus      rtmp://192.168.0.1           pierwszy gool
  
2      kwakus       rtmp_nieważne

3     bibol           rtmp_nieważne

4      kwikus        rtmp://192.168.21.345     samobója

5     aderos           rtmp_nieważne

6     XXXXX          rtmp_nieważne

7    kwikus           rtmp://192.168.51.23       to był gol


Ja nie pytałem jak mam w niej wyszukiwać
Pytałem jak teraz pobrać z tej bazy to

Kod
4      kwikus        rtmp://192.168.21.345     samobója

A konkretnie to potrzebuje mieć to rtmp żeby móc wstawić je do playera
W układzie jak miałem osobne kolumny na każdy kanał nie było problemu ,natomiast teraz nie wiem jak wydobyć żądane rtmp

Dodam tylko że ID usera nie jest znane .
viking
User miał być id z tabeli users a nie na sztywno zapisaną nazwą. Poczytaj trochę o kluczach obcych.
Dalej poprawne będzie zapytanie nospor tylko że zamiast id masz podstawić kolumnę w której trzymasz login.
abel1
Nawet jak by była kolumna zawierająca ID z tabeli użytkownicy to nadal nic to nie daje
Przypatrz się tabeli którą napisałem dodam do niej kolumnę ID

Kod
ID  |  user_id  |  USER     |           LINK                    |  NAZWA

1         6              kwikus      rtmp://192.168.0.1           pierwszy gool
  
2         45            kwakus       rtmp_nieważne

3         33            bibol           rtmp_nieważne

4         6             kwikus        rtmp://192.168.21.345     samobója

5          23          aderos           rtmp_nieważne

6         123         XXXXX          rtmp_nieważne

7          6            kwikus           rtmp://192.168.51.23       to był gol


Teraz w tabeli każdy wpis ma swoje ID dodatkowo każdy wiersz ma ID usera z bazy użytkownicy
Nadal nie wiem jak zadać pytanie do bazy żeby wyciągnęło mi rtmp które w bazie ma ID=4
Oczywiście nie wiem jakie jest ID wpisu w bazie
Teraz nie chodzi o wyszukiwanie a o podstawianie konkretnych rtmp do playera
Pisząc zapytanie
  1. SELECT * FROM uzytkownicy u JOIN kanaly k ON u.id=k.user_id WHERE k.user='$user'

Wyciągnie mi to wszystkie wiersze tego usera

Kod
1         6              kwikus      rtmp://192.168.0.1           pierwszy gool
4         6             kwikus        rtmp://192.168.21.345     samobója
7          6            kwikus           rtmp://192.168.51.23       to był gol


A ja potrzebuje zadać takie pytanie które wyciągnie tylko jeden
Ale Nie wiem jaka nazwa jest nie wiem jakie ma ID w tej tabeli ,znana jest tylko nazwa usera i daj my na to że jego ID z tabeli użytkownicy
W jaki sposób teraz podać do playera tylko jeden rtmp
viking
Skoro nic o tym rekordzie nie wiesz jakie ma kryteria spełniać do wybrania? Dlaczego akurat 4 a nie 7 albo 1? Jak chcesz jeden to dodaj LIMIT.
abel1
Dałem tylko taki przykład
Sens strony którą pisze jest taki że user może dodawać swoje filmiki , więc nie będę wiedział jaki filmik ma ID oraz nazwa w tabeli "kanaly" . A że każdy będzie mógł dodawać więcej jak jeden to muszę mieć możliwość załadowania każdego osobno do playera żeby mógł się on wyświetlić .
Mam podstronę "lista kanałów" na której będzie wyświetlać się lista wszystkich dostępnych filmików w formie linków , każdy link to tytuł z kolumny "nazwa"
viking
No to masz wszystko co potrzeba do wyświetlenia. Znasz wszystkie filmy przyporządkowane do użytkownika, masz id filmu, jego nazwę oraz adres do przekazania do playera. Możesz wyświetlić wszystkie zapisane w bazie dla każdego usera. Możesz też do tego dodać np. jakieś kategorie - albo narzucone odgórnie, albo dla każdego usera indywidualnie.
abel1
Odpowiadając bazowałeś na tym co przedstawiłem
Ale wyobraź sobie że to ty jesteś userem na tej stronie , ja nie wiem kiedy i co ty tam wstawisz , nie wiem jakie to będzie miało ID , jaki tytuł podasz do kolumny "nazwa". Znam jedynie twój nick , znając twój nick mam też twoje ID z tabeli użytkownicy , to samo ID jest w tabeli "kanaly" w kolumnie "user_id".
ale ty wstawiasz dziś jeden filmik , za tydzień kolejny itd. ale w między czasie inni zarejestrowani wstawiają też jakieś filmiki . Jak mam teraz pobrać twój konkretny filmik i wstawić do playera i tak z każdym twoim i innych userów filmikami .A na podstronie wyświetlającej ma to wyglądać następująco .
Tytuł filmiku pobrany z tabeli "kanaly"kolumny "nazwa" a pod nim player wyświetlający ten właśnie film
viking
A jak do tej podstrony wyświetlającej przechodzisz? Albo przez jakiś profil uzytkownika gdzie widoczne są jego filmy, albo ze strony ogólnej gdzie wyświetliłeś wszystkie filmy. Skoro je wyświetliłeś to znasz id filmu. Adres będzie wyglądał przykładowo /pokazfilm/4. Wybierasz film o id 4 i odpalasz go w playerze.
szydlak
A ja Ci proponuje abyś zaczął tworzyć poszczególne funkcjonalności i wtedy zadawał pytania. bo teraz pytasz o wszystko a zarazem o nic konkretnie.
abel1
Dziękuje wszystkim za pomoc

Być może trochę chaotycznie cap.gif opisywałem mój problem , troche namieszałem przez co trudno było wam mi doradzić właściwe rozwiązanie .
Ale mimo wszystko udało mi sie z waszą pomocą zrobić to co chciałem
Jeszcze raz wszystkim dziękuje
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.