Merhaba arkadaşlar phpyi yeni öğreniyorum ve bir yerde takılıp kaldım
şöyle bir sorunum var
durum adında bir sütuna varsayılan değeri 0 olarak atıyorum böylece giren tüm veriler onaysız olarak gözükmekte daha sonra onayladıkları mı aynı sütunda 1 olarak düzenliyorum buraya kadar bir sorun yok
fakat ben 1 ve 0 olan yani onaylı ve onaysız kayıtların tek tek sayılarını alıp bir birlerine olan yüzdelerini göstermek istiyorum
yani %10 onaysız mesaj var %90 onaylı mesaj var gibi
bunu nasıl yapabilirim nette çok aradım ama bulamadım malesef
Php ile veri saydırma ustalarım yardım
6
●1.128
- 16-05-2015, 12:01:51Kimlik doğrulama veya yönetimden onay bekliyor.Selamlar kolay gelsin,
İstediğin bir sorgunun kaç sonucu olduğunu şöyle alabilirsin :
<?php $toplam = mysql_num_rows(mysql_query("SELECT * FROM kelimeler")); $yuzdesiistenilen = mysql_num_rows(mysql_query("SELECT * FROM kelimeler WHERE onay=1")); ?>Yüzde hesaplamak için de şöyle yapabiliriz :
<?php $yuzde = ($yuzdesiistenilen*100)/$toplam; ?>
Umarım yardımcı olabilmişimdir. 100-$yuzde de onaysızların yüzdesini verir zaten.
Not : mysql_num_rows kullanımı yavaşlatıyor mu emin olamadım, select count diye bir olay da var onu kullanmak daha hızlı olabilir. - 16-05-2015, 12:02:06Sorununuz bunları çekmekte mi oranı yapmakta mı ?
Çekme kısmını mysqli kullanıyorsanız şöyle yapacaksınız.
$onaysiz = mysqli_num_rows(mysqli_query($baglanti, "SELECT id FROM tablo WHERE sutun = 0")); $onayli = mysqli_num_rows(mysqli_query($baglanti, "SELECT id FROM tablo WHERE sutun = 1"));
Oran kısmı iste
$oran = 100/$onaysiz+$onayli; $onaylioran = $oran*$onayli; $onaysizoran = $oran*$onaysiz;
- 16-05-2015, 12:08:05<?php
$onayli = mysql_num_rows(mysql_query("SELECT * FROM icerik where durum=1"));
$onaysiz = mysql_num_rows(mysql_query("SELECT * FROM icerik where durum=0"));
$toplam = $onayli + $onaysiz;
$onayli_yuzde = substr(($onayli/$toplam) * 100, 0, 5);
$onaysiz_yuzde = substr(($onaysiz/$toplam) * 100, 0, 5);
?>
şöyle birşey düşündüm ama test etmedim. bir denersen güzel olur. kolay gelsin. - 16-05-2015, 12:35:00hepinize teşekkür ederim deniyeceğim şimdi
--R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 12:35:00 -->-> Daha önceki mesaj 12:27:40 --
Ceu adlı üyeden alıntı: mesajı görüntüle
hocam verdiğiniz kod çalışıyor yalnız 2 sonucu aynı anda yazdırınca şöyle bir hata alıyorum
Parse error: syntax error, unexpected T_ECHO, expecting ',' or ';' in C:\AppServ\www\servispanel\php2\say.php on line 16
sizin verdiğiniz koda sadece ekleme olarak sayfaya yazdırmayı söyledim ve kendime göre mysql bilgilerini girdim kod aşağıdaki gibi
<?php require_once("inc/config.php"); ?> <?php $onayli = mysql_num_rows(mysql_query("SELECT * FROM odaariza where arizadurum=1")); $onaysiz = mysql_num_rows(mysql_query("SELECT * FROM odaariza where arizadurum=0")); $toplam = $onayli + $onaysiz; $onayli_yuzde = substr(($onayli/$toplam) * 100, 0, 5); $onaysiz_yuzde = substr(($onaysiz/$toplam) * 100, 0, 5); echo $onaysiz_yuzde; echo $onaysiz_yuzde; ?> - 16-05-2015, 12:57:26tüm herkese tekrardan teşekkür ediyorum bazen çok basit şeyleri kaçırıyorum sizlerde olmasanız
ben ne yapardım ellerinize sağlık
--R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 12:57:26 -->-> Daha önceki mesaj 12:41:15 --
bu arada verdiğiniz kod bu işe yarıyor tekrardan teşekkürler
ben ne yapardım ellerinize sağlık