• 24-11-2013, 13:28:21
    #1
    Merhaba arkadaşlar, oyun sitemde en çok olumlu oy alanları listelemek istiyorum. Ama kullandığım script sadece en çok oy alanları listeliyor. Ben baya bir kurcaladım ama mysql bilgim pek iyi olmadığı için işin içinden çıkamadım.

    Tablo bu.
    +---------+------+-----------+
    | idno | oyunid | uyeid | puan|
    +---------+------+-----------+
    | 1.....| 1.........| 1......| 1......|
    | 2.....| 1.........| 5......| 1......|
    | 3.....| 1.........| 8......| 2......|
    | 4.....| 2.........| 2......| 1......|
    | 5.....| 2.........| 8......| 2......|
    | 6.....| 2.........| 2......| 1......|
    | 7.....| 2.........| 8......| 2......|
    | 8.....| 2.........| 2......| 1......|
    +---------+------+-----------+

    Olumlu oy (puan) = 1
    Olumsuz oy (puan)=2

    $sorgu1 = mysql_query("SELECT SUM(oy.puan), 
    			oy.oyunid, oyunlar.idno, oyunlar.swf, oyunlar.baslik, oyunlar.aciklama, oyunlar.oynanma,
    			oyunlar.seobaslik, oyunlar.resim, oyunlar.kategori, oyunlar.video, oyunlar.tuslar, oyunlar.tarih, 
    			 CASE WHEN ( oyunlar.zaman BETWEEN '".$yenioyunbaslangictarihi."' and '".$zaman."') THEN '1' ELSE '0' END 'yenimi',
    			kat.idno kategoriidno,kat.kategorimetni, kat.baslik kategoribaslik, kat.aciklama kategoriaciklama, kat.katresim kategoriresim,
    			kat.kategorimetni,
    			kat.seobaslik kategoriseobaslik from oylama oy, oyunlar, kategoriler kat where oyunlar.idno=oy.oyunid and oy.puan=1 and kat.idno=oyunlar.kategori and oyunlar.aktif = 1 GROUP by oy.oyunid order by SUM(oy.puan) DESC limit ".populeroyunsayisi);
    Yapmak istediğim şu

    Diyelim oyun 20 oy almış ve bunlardan 15'i olumlu, (75%)
    başka bir oyun 16 oy almış ve 14'ü olumlu (87.5%)

    Amacım bunu yüzdelik oranlara göre sıralamak.

    Yardım edecek arkadaşlara şimdiden çok teşekkür ediyorum.
  • 24-11-2013, 13:45:05
    #2
    Üyeliği durduruldu
    suskunduygular adlı üyeden alıntı: mesajı görüntüle
    Merhaba arkadaşlar, oyun sitemde en çok olumlu oy alanları listelemek istiyorum. Ama kullandığım script sadece en çok oy alanları listeliyor. Ben baya bir kurcaladım ama mysql bilgim pek iyi olmadığı için işin içinden çıkamadım.

    Tablo bu.
    +---------+------+-----------+
    | idno | oyunid | uyeid | puan|
    +---------+------+-----------+
    | 1.....| 1.........| 1......| 1......|
    | 2.....| 1.........| 5......| 1......|
    | 3.....| 1.........| 8......| 2......|
    | 4.....| 2.........| 2......| 1......|
    | 5.....| 2.........| 8......| 2......|
    | 6.....| 2.........| 2......| 1......|
    | 7.....| 2.........| 8......| 2......|
    | 8.....| 2.........| 2......| 1......|
    +---------+------+-----------+

    Olumlu oy (puan) = 1
    Olumsuz oy (puan)=2

    $sorgu1 = mysql_query("SELECT SUM(oy.puan), 
    			oy.oyunid, oyunlar.idno, oyunlar.swf, oyunlar.baslik, oyunlar.aciklama, oyunlar.oynanma,
    			oyunlar.seobaslik, oyunlar.resim, oyunlar.kategori, oyunlar.video, oyunlar.tuslar, oyunlar.tarih, 
    			 CASE WHEN ( oyunlar.zaman BETWEEN '".$yenioyunbaslangictarihi."' and '".$zaman."') THEN '1' ELSE '0' END 'yenimi',
    			kat.idno kategoriidno,kat.kategorimetni, kat.baslik kategoribaslik, kat.aciklama kategoriaciklama, kat.katresim kategoriresim,
    			kat.kategorimetni,
    			kat.seobaslik kategoriseobaslik from oylama oy, oyunlar, kategoriler kat where oyunlar.idno=oy.oyunid and oy.puan=1 and kat.idno=oyunlar.kategori and oyunlar.aktif = 1 GROUP by oy.oyunid order by SUM(oy.puan) and SUM(oy.oyunid)  DESC limit ".populeroyunsayisi);
    Yapmak istediğim şu

    Diyelim oyun 20 oy almış ve bunlardan 15'i olumlu, (75%)
    başka bir oyun 16 oy almış ve 14'ü olumlu (87.5%)

    Amacım bunu yüzdelik oranlara göre sıralamak.

    Yardım edecek arkadaşlara şimdiden çok teşekkür ediyorum.

    şu işini gorebilir.

    1.
    http://www.youtube.com/watch?v=UC4he0CAvgY

    2.
    http://www.youtube.com/watch?v=2YMdd...feature=relmfu
    3.
    http://www.youtube.com/watch?v=VHE4F...feature=relmfu
    4.
    http://www.youtube.com/watch?v=V7RcG...feature=relmfu

    ------------------

    Yarımcı olabildiysem sag alttaki r10+ butonuna basabilirsin
  • 24-11-2013, 13:50:48
    #3
    caxe adlı üyeden alıntı: mesajı görüntüle
    şu işini gorebilir.
    1
    2
    3
    4

    ------------------

    Yarımcı olabildiysem sag alttaki r10+ butonuna basabilirsin
    Yardım için teşekkür ederim ama verdiğiniz bütün videolar yayından kalkmış. Alternatif var mı acaba?
  • 24-11-2013, 13:56:39
    #4
    Üyeliği durduruldu
    suskunduygular adlı üyeden alıntı: mesajı görüntüle
    Yardım için teşekkür ederim ama verdiğiniz bütün videolar yayından kalkmış. Alternatif var mı acaba?

    <?PHP
    //şuanki seviyemiz 40 olsun
    
    $sayi1=40;
    
    //50 olunca biteceğini varsayalım.
    
    $sayi2=50;
    
    $sonuc=($sayi1 * 100) / $sayi2;
    
    echo $sonuc;
    
    /*ekrana 80 değerini basacaktır yani şöyle bir örnek verecek olursak
    
    bir seviye 50 olunca bitiyorsa ve sizinde son seviyeye gelmenize %80 kaldı demektir bu.
    
    */
    
    ?>

    Yardımcı olabldiysem sag alttaki r10+ basmayı unutmayın
  • 24-11-2013, 14:13:10
    #5
    caxe adlı üyeden alıntı: mesajı görüntüle
    <?PHP
    //şuanki seviyemiz 40 olsun
    
    $sayi1=40;
    
    //50 olunca biteceğini varsayalım.
    
    $sayi2=50;
    
    $sonuc=($sayi1 * 100) / $sayi2;
    
    echo $sonuc;
    
    /*ekrana 80 değerini basacaktır yani şöyle bir örnek verecek olursak
    
    bir seviye 50 olunca bitiyorsa ve sizinde son seviyeye gelmenize %80 kaldı demektir bu.
    
    */
    
    ?>

    Yardımcı olabldiysem sag alttaki r10+ basmayı unutmayın

    Ben hiç birşey anlamadım maalesef. Benim sorumla alakası nedir?