[]
Anket sonuçlarının yüzdelik değerlerini almak (PHP)
Bir anket sitesi oluşturuyorum ve anket sonuçlarını yüzdelik bir değerle göstermem gerekiyor.
Öncelikle tablo yapımı incelemeniz buraya eklemek istiyorum.
prntscr.com
Sonuçları yani votes tablosunda poll_id satırına bağlı olan kayıtları count ile sayarak hangi anketin kaç tane oyu var görebiliyorum.
Bunu anasayfada göstermek adına bootstarp'ın progress bileşeninden faydalanıyorum.
kullandığım satır:
<div class="progress-bar progress-bar-striped progress-bar-animated" role="progressbar" aria-valuenow="75" aria-valuemin="0" aria-valuemax="100" style="width: 15%"></div>
width değiştirdiğim zaman barın o rakama göre yüzdelik bır kısmı doluyor.
Buraya kadar her şey tamam. Fakat benim elimdeki sonuçlar şu şekilde count çıktısı veriyor:
seçenek 1 - 67
seçenek 2 - 123
seçenek 3 - 401
seçenek 4 - 1852
bu değerlerde nasıl bir matematiksel işlemi yapmam gerekiyor? yani bu sonuçlar bana %100 altında bir değer vermesi gerekiyorki bar kısmını doldurayım. Oylar 1000'den fazla olunca hesaplama nasıl olacak bunu bir türlü algılayamadım.
Yardımlar için teşekkürler.
Öncelikle tablo yapımı incelemeniz buraya eklemek istiyorum.
prntscr.com
Sonuçları yani votes tablosunda poll_id satırına bağlı olan kayıtları count ile sayarak hangi anketin kaç tane oyu var görebiliyorum.
Bunu anasayfada göstermek adına bootstarp'ın progress bileşeninden faydalanıyorum.
kullandığım satır:
<div class="progress-bar progress-bar-striped progress-bar-animated" role="progressbar" aria-valuenow="75" aria-valuemin="0" aria-valuemax="100" style="width: 15%"></div>
width değiştirdiğim zaman barın o rakama göre yüzdelik bır kısmı doluyor.
Buraya kadar her şey tamam. Fakat benim elimdeki sonuçlar şu şekilde count çıktısı veriyor:
seçenek 1 - 67
seçenek 2 - 123
seçenek 3 - 401
seçenek 4 - 1852
bu değerlerde nasıl bir matematiksel işlemi yapmam gerekiyor? yani bu sonuçlar bana %100 altında bir değer vermesi gerekiyorki bar kısmını doldurayım. Oylar 1000'den fazla olunca hesaplama nasıl olacak bunu bir türlü algılayamadım.
Yardımlar için teşekkürler.
Önce tüm sonuçlar toplanır yani toplam oy sayısı bulunur buna B diyelim, ardından her sonuç B ye bölünür ve 100 ile çarpılır.
67/2443*100=2,74
123/2443*100=5,03
401/2443*100=16,41
1852/2443*100=75,80
67/2443*100=2,74
123/2443*100=5,03
401/2443*100=16,41
1852/2443*100=75,80
- 16f628a (19.12.18 15:01:58)
1