• 15-08-2022, 06:05:51
    #1
    Kimlik doğrulama veya yönetimden onay bekliyor.
    1 tane databasede
    2 tane tablo var
    https://prnt.sc/qf4OQubMF2sI
    1 tanesi friends_player tablosundan gelen player_id sütunundaki id'leri player_name sütnuna denk geliyor
    ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    https://prnt.sc/QnsAsJHYEj9U
    2.tablodaki 2 tane id sutünü var friend1_id ve friend2_id
    friend1_id'deki id'ler friends_player'deki player_id sıralamasına denk geliyor benim ihtiyacım olan bilgi ise
    friends_friend_assignment tablosundaki friend1_id'deki sütundaki hangi player isimine denk geliyorsa o isme ihtiyacım var ve o isim'in karşındaki friend2_id'deki kullanıcının isimine ihtiyacım var
    bu iki id'deki isimleri player_name olarak bir json formatına ihtiyacım var

    try {
        $db = new PDO("mysql:host=".DB_HOST.";port=".DB_PORT.";dbname=".DB_NAME.";charset=utf8", DB_USERNAME, DB_PASSWORD);
      }
      catch (PDOException $e) {
        die("<strong>MySQL bağlantı hatası:</strong> ".utf8_encode($e->getMessage()));
      }
    
      function get($parameter) {
        if (isset($_GET[$parameter])) {
          return strip_tags(trim(addslashes($_GET[$parameter])));
        }
        else {
          return false;
        }
      }
    
      $kontrol = $db->prepare("SELECT * FROM friends_players WHERE player_name = ?");
      $kontrol->execute(array(get("player_name")));
    
      
      if (get("player_name")){
        if($kontrol->rowCount() > 0){
          $redoarray = [];
          foreach($kontrol as $readkontrol) {
            $redoarray[] = array(
              'player_id' => $readkontrol["player_id"],
              'player_name' => $readkontrol["player_name"],
              'last_online' => $readkontrol["last_online"],
            );
          } 
          echo json_encode($redoarray);
        } else {
          die("Bu isimde kullanıcı yok");
        }
      } else {
        die("isim belirlememişsin");
      }
    
      $control = $db->prepare("SELECT * FROM friends_friend_assignment WHERE friend2_id = ?");
      $control->execute(array(get("id")));
    
    if (get("id")){
        if($control->rowCount() > 0){
          $redoarray = [];
          foreach($kontrol as $readkontrol) {
            $redoarray[] = array(
              'friend1_id' => $readkontrol["friend1_id"],
              'friend2_id' => $readkontrol["friend2_id"],
            );
          } 
          echo json_encode($redoarray);
        } else {
          die("Bu isimde kullanıcı yok");
        }
      } else {
        die("isim belirlememişsin");
      }
    ?>
    kod örneğim burada yapamadım
  • 15-08-2022, 06:56:38
    #2
    hocam yardım edicektim ama inan dediklerinden hiç bir şey anlamadım. eğer idler çakışıyor filan demeye çalışıyorsan as kullan
  • 15-08-2022, 06:59:37
    #3
    Aramızdan Ayrılanlar - Vefat
    opyan adlı üyeden alıntı: mesajı görüntüle
    hocam yardım edicektim ama inan dediklerinden hiç bir şey anlamadım. eğer idler çakışıyor filan demeye çalışıyorsan as kullan
    id'ler çakışmıyor friend1_id numarası player_name sütunundaki isimlere denk geliyor friend2_id ise karşısındaki arkadaşı olan kişinin id'si ismi player_name tablosundaki isime denk geliyor yani friend1_id'deki sütundeki ismi mesela RivaDarlin'e denk geliyor friend2_id'deki ise xEgosMenSS isime denk geliyor ikisi arkadaş olduğunu söylüyor bunu json çıktısına ihtiyacım var
  • 15-08-2022, 07:39:28
    #4
    BraveMert adlı üyeden alıntı: mesajı görüntüle
    id'ler çakışmıyor friend1_id numarası player_name sütunundaki isimlere denk geliyor friend2_id ise karşısındaki arkadaşı olan kişinin id'si ismi player_name tablosundaki isime denk geliyor yani friend1_id'deki sütundeki ismi mesela RivaDarlin'e denk geliyor friend2_id'deki ise xEgosMenSS isime denk geliyor ikisi arkadaş olduğunu söylüyor bunu json çıktısına ihtiyacım var
    yazdıklarının hiçbiri anlaşılmıyor
  • 15-08-2022, 09:14:31
    #5
    sql olarak mı soruyorsun bilemedim ama anladığım kadarıyla öyle.

    select CASE
    WHEN fb.player_name IS NOT NULL THEN fb.player_name ELSE "Kullanıcı Silindi" END KullanıcıAdı from friends_friend_assignment ffa
    LEFT JOIN friends_player fp ON ffa.friend1_id = fb.player_id
    where ffa.friend1_id=?
    Düz
    select fb.player_name KullanıcıAdı from friends_friend_assignment ffa
    LEFT JOIN friends_player fp ON ffa.friend1_id = fb.player_id
    where ffa.friend1_id=?