mysql sorgu içinde if kullanımı nasıl yapılır
Yorumları onaylananlar ve onaylanmayanlar şeklinde listeliyorum
Butonların yanına onaylanmış ve onaylanmamış yorum sayılarını almak istiyorum.
Ama bunlar için ekstra sorgu yapmak istemem.
$sorgu = "SELECT * FROM yorumlar";
$sorgu->execute();
$sorguresult = $sorgu->fetchAll(PDO::FETCH_OBJ);
echo'<buton>Onaylı(sayısı)</buton><buton>Onaylanmamış(sayısı)</buton>';
foreach($sorguresult as $val){
if($$val->onay == 1){
echo "ONAYLANMIŞLAR";
//onaylanmışları listele
}else{
echo "ONAYLANMAMIŞLAR";
//onaylanmamışlar
}
}
Soru hatalı mı? 👎
Eğer sorunun kurallara aykırı olduğunu düşünüyorsanız lütfen bize bildirin!
Cevaplar (2)
$sorgu = "SELECT SUM(onay = 1) onayli, SUM(onay = 0) onaysiz FROM yorumlar";
$sorgu->execute();
$sorguresult = $sorgu->fetchAll(PDO::FETCH_OBJ);
echo'<buton>Onaylı(.'$sorguresult['onayli']'.)</buton><buton>Onaylanmamış(.'$sorguresult['onaysiz']'.)</buton>';
foreach($sorguresult as $val){
if($val->onay == 1){
echo "ONAYLANMIŞLAR";
//onaylanmışları listele
}else{
echo "ONAYLANMAMIŞLAR";
//onaylanmamışlar
}
}
BUDA FONKSİYONLU HALI BURADAN YAZDIM HATA OLABİLİR CANLI DENERSİN
function onay($deger){
if($deger == 1){
echo "ONAYLANMIŞLAR";
}
if($deger == 0){
echo "ONAYLANMAMIŞLAR";
}
return $deger;
}
$sorgu = "SELECT SUM(onay = 1) onayli, SUM(onay = 0) onaysiz FROM yorumlar";
$sorgu->execute();
$sorguresult = $sorgu->fetchAll(PDO::FETCH_OBJ);
echo'<buton>Onaylı(.'$sorguresult['onayli']'.)</buton><buton>Onaylanmamış(.'$sorguresult['onaysiz']'.)</buton>';
foreach($sorguresult as $val){
onay($val['onay']);
}