php
  • json
  • 2016-07-07 48 views -1 likes 
    -1

    我在分割两个值时遇到了问题,它一直显示“Warning:Zero by ... in”。php - 划分两个值

    我已阅读并尝试了一些关于在这里划分值的帖子,但我仍然无法解决问题。

    这是片段:

    .....

    $query2 = "SELECT SUM(jumlah_poin) AS jumlah_mk FROM tbl_nilai WHERE nama_mk = 'Pengantar Teknologi Informasi' 
    AND nip_dsn = '198'"; 
    $result2 = mysql_query($query2); 
    $row2 = mysql_fetch_assoc($result2); 
    
    $querry4 = "SELECT count(1) FROM tbl_nilai WHERE nama_mk = 'Pengantar Teknologi Informasi' 
    AND nip_dsn = '198'"; 
    $result4 = mysql_query($querry4); 
    $row4 = mysql_fetch_array($result4); 
    
    $sum ['jumlah2']= $row2 ['jumlah_mk']/$row4 [0]; 
    
    echo json_encode(array($resultArray,$sum)); 
    

    ,我需要使它在一个echo。任何你可以提供给newb的解释,将不胜感激。帮助和教我好吗:d

    +0

    'mysql_ *'职能不再由PHP支持。尝试使用'mysqli_ *'或PDO。在学习的时候更好地使用预先准备好的语句,以后可以避免许多问题。同时验证您读取/获取的所有内容。 [空](http://php.net/manual/en/function.empty.php)和[isset](http://php.net/manual/en/function.isset.php)是你的朋友。 – bansi

    回答

    0

    有两个原因,试试这个:

    1. 更改查询到

      $querry4 = "SELECT count(1) as totalCount FROM tbl_nilai WHERE nama_mk ='Pengantar Teknologi Informasi' AND nip_dsn = '198'";

    $sum ['jumlah2']= $row2 ['jumlah_mk']/$row4 ['totalCount']; 
    
    1. 如果没有记录匹配,您的第二个查询返回计数为0。
    +0

    它仍然显示 “假”,所以我尝试这样做: '$股利= $ 2行/ $ ROW4;' '$总和[ 'jumlah2'] = $ DIV [ '汝来'];' 和结果是“致命错误:不支持的操作数类型在......”:( – Riezty

    +0

    当我这样做时$ sum ['jumlah2'] = $ row2 ['jumlah_mk']''$ sum ['jumlah3'] = $ row4 ['totalCount'];',它显示“jumlah2”:“910”和“jumlah3”:“8”,然后我尝试这样做'$ sum ['jumlah2'] = $ row2 ['jumlah_mk']/8;'结果是“jumlah2”:113.75(正确答案) – Riezty

    0

    为了防止零误差devide我可能把它放在一个if语句

    if($row4[0] != 0) { // any falsy value would evaluate to zero 
        $sum ['jumlah2']= $row2 ['jumlah_mk']/$row4 [0]; 
    } else { 
        $sum = $sum_default_value; 
    } 
    
    相关问题