Duyuruyu Kapat
Facebook Gözat
Twitter Gözat

bu sorgu nasıl yazılır

Konu, 'PHP' kısmında digrev tarafından paylaşıldı.

Etiketler:
  1. digrev

    digrev Üye

    Kayıt:
    7 Şubat 2012
    Mesajlar:
    145
    Beğenilen Mesajlar:
    0
    arkadaşlar sessionla aldığım kullanıcının birden fazla oy kullanmasını engellemeye çalışıyorum bir tablom var var adı like_table içinde 3 tabe kolon var . id, framework, userID id kısmı zaten otomatik artıyor framework yazan yer ise yazılım dilleri için php,js.Sayfada radio butonlar var kullanıcı bir tanesi seçip butona tıklayınca veritabanına kayıt yapacak ...aynı kullanıcının birden fazla kayıt eklemsini engellemek için böyle bir sorgu yazmaya çalışıyorum ama olmuyor

    Kod:
    <?php
    
    //action.php
    include 'init.php';
    if (isset($_POST['framework'])) {
        $fr = $_POST['framework'];
    
        $query = "
      INSERT INTO like_table(framework,userId)
    
      select {$_SESSION['userId']},{$fr}
      from like_table
       where not exists(select userId from like_table where framework={$fr} and userId={$_SESSION['userId']} ) limit 1";
    
        mysqli_query($connect, $query) or die(mysqli_error($connect));
        $sub_query = '
       SELECT framework, count(*) as no_of_like FROM like_table
       GROUP BY framework
       ORDER BY id ASC';
        $result = mysqli_query($connect, $sub_query) or die(mysqli_error($connect));
        $data = array();
        while ($row = mysqli_fetch_array($result)) {
            $data[] = array(
                'label' => $row['framework'],
                'value' => $row['no_of_like'],
            );
        }
        $data = json_encode($data);
        echo $data;
    }