• 05-05-2023, 18:12:51
    #1
    Merhaba arkadaşlar değişik bir sorgu yapmam gerekiyor ama içinden çıkamadım.

    Böyle bir kullanıcı tablom var;

    Böyle de bir tweet listem var;


    böyle bir beğeni listem var;



    böyle bir de yorum listem var;


    böyle bir de retweet listem var;


    şimdi benim ihtiyacım olan sorgu aşağıdaki görselde de göreceğiniz gibi oturum açmış kullanıcının subject 1 tweetinde ki içeriği retweet ettiğini, like yaptığını ve yorum yazdığını filtrelemem gerekiyor. Bu üç aşamayı da tamamladıysa bu tweetin listeden kalkmasını istiyorum. Olay şurada karışıyor,

    kullanıcı subject 1 de like, subject 2 de de retweet yapmış olabilir. Bu butonları da aynı zamanda sorgulayıp pasif hale getirmem gerekiyor. Buraya uygulayabileceğim mantık ve sorgu hakkında uzmanlığınıza ihtiyacım var.
    Ücretli ya da ücretsiz yardımcı olacak arkadaşlar ilgilenirse sevinirim.

  • 05-05-2023, 18:23:16
    #2
    Parçala Yönet mantığında ilerlerseniz Ajax ile butonları ardından da tümünü yapmışsa yine bir ajax yardımı ile komple yok edebilirsiniz hocam
  • 05-05-2023, 18:26:36
    #3
    Canozkan adlı üyeden alıntı: mesajı görüntüle
    Parçala Yönet mantığında ilerlerseniz Ajax ile butonları ardından da tümünü yapmışsa yine bir ajax yardımı ile komple yok edebilirsiniz hocam
    parçala yönet derken hocam
    ajax kısmının mantığı tamam ama ajax ile gelen sorgunun hangi içerikten geldiğini nasıl ayrıştıracağım. 2 ajax arasında da koşula göre sorgulamak gerekmiyor mu?
  • 05-05-2023, 18:40:01
    #4
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Arifap adlı üyeden alıntı: mesajı görüntüle
    Merhaba arkadaşlar değişik bir sorgu yapmam gerekiyor ama içinden çıkamadım.

    Böyle bir kullanıcı tablom var;

    Böyle de bir tweet listem var;


    böyle bir beğeni listem var;



    böyle bir de yorum listem var;


    böyle bir de retweet listem var;


    şimdi benim ihtiyacım olan sorgu aşağıdaki görselde de göreceğiniz gibi oturum açmış kullanıcının subject 1 tweetinde ki içeriği retweet ettiğini, like yaptığını ve yorum yazdığını filtrelemem gerekiyor. Bu üç aşamayı da tamamladıysa bu tweetin listeden kalkmasını istiyorum. Olay şurada karışıyor,

    kullanıcı subject 1 de like, subject 2 de de retweet yapmış olabilir. Bu butonları da aynı zamanda sorgulayıp pasif hale getirmem gerekiyor. Buraya uygulayabileceğim mantık ve sorgu hakkında uzmanlığınıza ihtiyacım var.
    Ücretli ya da ücretsiz yardımcı olacak arkadaşlar ilgilenirse sevinirim.

    Pm iletildi
  • 05-05-2023, 18:47:25
    #5
    arkadaşlar bütçe sormayın. Sizin birim zamanda yapacağınız işin fiyatını ben belirleyemem.
    Şu fiyata yapabilirim diyecek arkadaşlar varsa daha sağlıklı iletişim kurabiliriz.
  • 06-05-2023, 21:20:03
    #6
    <?php
    $user_id = 1;
    
    // Tüm tweetleri seç
    $sql = "SELECT * FROM tweets";
    $result = $conn->query($sql);
    
    if ($result->num_rows > 0) {
      // Her tweet için işlem yap
      while($row = $result->fetch_assoc()) {
        // Tweetin ID'si
        $tweet_id = $row["id"];
        
        // Like tablosundan kullanıcının bu tweet için like yapmış olup olmadığını kontrol et
        $sql_likes = "SELECT * FROM likes WHERE tweet_id = $tweet_id AND user_id = $user_id";
        $result_likes = $conn->query($sql_likes);
        $has_liked = $result_likes->num_rows > 0;
        
        // Retweet'ler tablosundan kullanıcının bu tweet için retweet yapmış olup olmadığını kontrol et
        $sql_retweets = "SELECT * FROM retweets WHERE tweet_id = $tweet_id AND user_id = $user_id";
        $result_retweets = $conn->query($sql_retweets);
        $has_retweeted = $result_retweets->num_rows > 0;
        
        // Yorumlar tablosundan kullanıcının bu tweet için yorum yapmış olup olmadığını kontrol et
        $sql_comments = "SELECT * FROM comments WHERE tweet_id = $tweet_id AND user_id = $user_id";
        $result_comments = $conn->query($sql_comments);
        $has_commented = $result_comments->num_rows > 0;
        
        // Eğer kullanıcı tweet için bir işlem yapmışsa, tweeti listeden kaldır
        if ($has_liked && $has_retweeted && $has_commented) {
          // Tweeti listeden kaldırma kodu buraya gelecek
        }
      }
    }
    ?>
    Bu örnek bir durum bu örnekten yola çıkabilrisin
  • 07-05-2023, 02:44:32
    #7
    select u.id UserID,
    CASE
    WHEN l.id IS NULL THEN false
    ELSE true
    END as 'Like',
    CASE
    WHEN c.id IS NULL THEN false
    ELSE true
    END Comment,
    CASE
    WHEN r.id IS NULL THEN false
    ELSE true
    END Retweet
    from tweets t
    LEFT JOIN users u ON t.userid = u.id
    LEFT JOIN likes l on t.id = tweetid
    LEFT JOIN comments c ON t.id = tweetid
    LEFT JOIN retweets r ON t.id = r.tweetid
    where u.id =: user_id
    True gelenler yapılmış false gelenler yapılmamış olarak kontrol edebilirsin.
  • 07-05-2023, 09:48:00
    #8
    ücretli destek sağlayabilirim