Merhabalar, iyi akşamlar. Üzerinde çalıştığım bir projem var. Bir video paylaşım sitesi. Şuan kodlama aşamasındayım ve işleyiş senaryosu kurma konusunda sorun yaşıyorum. Uzun süredir bu tür projeleri yapmadığım için parçaları birleştiremiyorum 😄
Sitenin panelinde video ekleme alanı hazırladım. Birden çok kategori seçimini destekleyecek şekilde.
Şimdi panelde kategori ekleme kısmındayım. Kategori adı ve kategorinin öne çıkan resmi olarak sorunsuz çalışıyor.
Senaryo kuramadığım kısım tam olarak burada başlıyor. Videolar ve kategoriler adında 2 adet tablom var. Ben sitenin anasayfasında kategorileri listeleyeceğim ve tıkladığım kategoriye göre ilgili videolar ayrı bir sayfada gelecek. Bu iki tabloyu birbirine bağlayıp nasıl bir işlem yapmalıyım? INNER JOIN olayı aklıma geliyor ama devamını gene getiremiyorum. Bu konuda fikir verirseniz sevinirim. Teşekkürler.
PHP Kodlamada Senaryo Kurma Sorunu Yaşıyorum
7
●240
- 29-01-2020, 20:24:56Yapılacak yöntem şu şekilde olmalı;
videos
categories
videos_categories_bounce
Bir videoyu bir yada birden fazla kategoriye bağlayacaksınız. Videos_categories_bounce tablosunda video_id ve category_id değerlerini girip okuyacağınız zamanda aynı şekilde bounce tablosundan çekmeniz gerekiyor - 29-01-2020, 20:25:30Plan program olmadan girişilen projelerde karşılaşılan normal bir durumdur.Kağıt üzerinde biraz çalışırsanız (UML-Flowchart) bu tip problemleri yaşamazsınız. Soruya gelecek olursak gerekli DB altyapısı hazır ise InnerJoin kullanarak o kategori ID değerine sahip videoları getirebilirsiniz şimdilik doğru yoldasınız diyeyim
- 29-01-2020, 20:26:20Videolara kategori id kaydettirip ilgili sorguyla ilgili kategori videolarını çekebilirsiniz
- 29-01-2020, 20:36:05Cevabınız için teşekkür ederim. O zaman şöyle bir yol izlemeliyim anladığım kadarıyla;Blacksheep adlı üyeden alıntı: mesajı görüntüle
Her kategoriye belirli bir ID değeri vereceğim. Videoyu kaydederken de belirlediğim ID ile kaydedeceğim. Veriyi çekerken de "SELECT * FROM videolar INNER JOIN kategoriler ON kategoriidsi = videolar.kategoriidsi" gibi bir sorgu kullanmam gerekiyor. Doğru mu anladım acaba?
CihanAksoy adlı üyeden alıntı: mesajı görüntüleCevaplarınız için teşekkür ederim 😊mertkilic0111 adlı üyeden alıntı: mesajı görüntüle - 29-01-2020, 20:43:18Aynen doğru anlamışsınız.MythDev adlı üyeden alıntı: mesajı görüntüle
- 30-01-2020, 05:34:38yanlis anlama var - bu sekide her video isin sadece 1 kategori secebilirsiniz.MythDev adlı üyeden alıntı: mesajı görüntüle
bir video, birden fazla kategoriye eklenecekse link tablo gerekir (kopru)
cihan aksoy dedigi sekilde yapmalisiniz
ornek birakiyorum
-- Drop table -- DROP TABLE public.video; CREATE TABLE public.video ( video_id int4 NOT NULL, link text NULL, CONSTRAINT video_pk PRIMARY KEY (video_id) ); -- Drop table -- DROP TABLE public.video_cat; CREATE TABLE public.video_cat ( cat_id int4 NOT NULL, cat_name text NULL, CONSTRAINT video_cat_pk PRIMARY KEY (cat_id) ); -- Drop table -- DROP TABLE public.video_cat_link; CREATE TABLE public.video_cat_link ( video_cat_link_id int4 NULL, video_id int4 NULL, video_cat_id int4 NULL, CONSTRAINT video_cat_link_video_cat_id_fkey FOREIGN KEY (video_cat_id) REFERENCES video_cat(cat_id), CONSTRAINT video_cat_link_video_id_fkey FOREIGN KEY (video_id) REFERENCES video(video_id) ); - 31-01-2020, 20:22:52Video ve kategorileri baglayan ayri bir tablo oluşturmayı deneyebilirsiniz.
cat_video_relation isimli tabloda
ID - cat _id- video_id
1 | 32 | 56
2 | 32 | 63
3 | 21 | 63
Gibi kategori ve video idlerini eleştirip ona göre çekebilirsiniz. Hem bu sayede 1 video yu borden fazla kategoride de gösterebilirsiniz.