folder Tahribat.com Forumları
linefolder Asp - Php - Cgi - Perl
linefolder Ayrı Ayrı Döngüler İçerisindeki Sql Sorgularını Birleştirmek (Php)



Ayrı Ayrı Döngüler İçerisindeki Sql Sorgularını Birleştirmek (Php)

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    GusFring
    GusFring's avatar
    Kayıt Tarihi: 24/Haziran/2009
    Erkek

    Yardımcı olacakları sıkmamak ve kolay anlaşılmasını sağlamak için kısa bir özetini geçeyim.

    imdb botu üzerinde çalışıyorum, foreach döngüsü ile sezon bilgilerini ayrı ayrı çekiyorum fakat veritabanına kayıt esnasında şöyle bir problem ile karşılaştım.

    https://paste.ee/p/BcwQs  -> Bu kod ile botu gönderip sezon içerisinde kaç tane bölüm varsa ismini çekiyorum.

    Bölüm ismi ile ona ait olan bölüm fotoğrafını eşleştirip aynı satıra eklemek için diğer sorgularımda update kullandım.

    (Sorguları birleştirmek istemimin sebebi bu. Insert sonrasında update kullanmak yerine tek bir insert ile bitirmek istemek.)

    https://paste.ee/p/Ug353 -> Bölüm fotoğrafının eklenmesini sağlayan kod.

    Sıkıntı burada doğuyor, sezon içerisinde 5 tane bölüm var diyelim, foreach döngüsü 5 kere gidip gelip bölüm ismini ekliyor.

    Veritabanı Görünümü

    Bölüm ismi 1

    Bölüm ismi 2

    Bölüm ismi 3

    Bölüm ismi 4

    Bölüm ismi 5

    diye ekledi.

    Sonra bölüm ismini ekleyen foreach döngüsünden çıkıp, dizinin bölüm fotoğraflarını ekleyen foreach döngüsünün içerisine giriyor ve doğal olarak ilk foreach döngüsünden en son cıkan $bolumismi değişkeninden dolayı, sadece dizinin en son bölümünün verilerini ekliyor.

    Veritabanı Görünümü

    Bölüm ismi 1          Boş

    Bölüm ismi 2          Boş

    Bölüm ismi 3          Boş

    Bölüm ismi 4          Boş

    Bölüm ismi 5          5. bölüm fotoğrafı

    İlk foreach döngüsünden $bolumismi = "Bölüm ismi 5" olarak çıktığı için sadece "5. bölüm fotoğrafı" update sorgusu ile eklendi, diğer satırlar boş kaldı.

    Veriler ayrı ayrı döngülerden toplandığı için tek bir insert sorgusu haline getiremedim.

    GusFring tarafından 26/Şub/18 15:59 tarihinde düzenlenmiştir
  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    nurulmac11
    nurulmac11's avatar
    Kayıt Tarihi: 04/Ağustos/2012
    Erkek

    https://paste.ee/p/RZXUi

     

    edit: counteri arttirmayi unutmusum onu da yaparsan calisir zannimca.

    nurulmac11 tarafından 26/Şub/18 16:30 tarihinde düzenlenmiştir

    black implies white, self implies other, life implies death.
  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    AslanAmca
    AslanAmca's avatar
    Kayıt Tarihi: 25/Eylül/2010
    Erkek

    koduna bakamadım da şimdi

    şu sitenin api si var, ve ücretsiz veriyo film listesini belki işine yarar uğraşmadan çekersin : https://www.themoviedb.org/

     


    İnsanlara umut sat gerisi gelir.
  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    GusFring
    GusFring's avatar
    Kayıt Tarihi: 24/Haziran/2009
    Erkek

    @nurulmac11, eve geçince kontrol edeceğim hocam.

    @nevorapat, biraz eğitim amaçlı böyle tercih ettim, teşekkür ederim.

  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    GusFring
    GusFring's avatar
    Kayıt Tarihi: 24/Haziran/2009
    Erkek

    @nurulmac11 senin kodunla da yapamadım hocam.

    Yapmak istediğim şey tekrar söyleyeyim,

    foreach döngüsü içerisinde $x değişkeni 5 kez döndü, $x son aldığı değere kendini eşitleyerek döngü dışına çıktı. Bana $x değişkeninin aldığı tüm değerler lazım, bu $x değişkenini nasıl bir diziye atıyabilirim?

  6. KısayolKısayol reportŞikayet pmÖzel Mesaj
    AslanAmca
    AslanAmca's avatar
    Kayıt Tarihi: 25/Eylül/2010
    Erkek
    GusFring bunu yazdı

    @nurulmac11 senin kodunla da yapamadım hocam.

    Yapmak istediğim şey tekrar söyleyeyim,

    foreach döngüsü içerisinde $x değişkeni 5 kez döndü, $x son aldığı değere kendini eşitleyerek döngü dışına çıktı. Bana $x değişkeninin aldığı tüm değerler lazım, bu $x değişkenini nasıl bir diziye atıyabilirim?

    foreach ten once : $temp = array() diyerek bi array tanimla

    sonra foreach icinde : $temp[] = x; 
    de, [] yeni elemanlar ekler arraye

    sonra kullanirsin. ama daha kolayi su: yapacagin isi bir fonksiyona yaz, foreach in icinde her dongude o fonksiyonu cagir. fonksiyon($x) diye


    İnsanlara umut sat gerisi gelir.
Toplam Hit: 1163 Toplam Mesaj: 6
php sql insert update