douke1905 2015-08-31 14:50
浏览 48
已采纳

获取一个帐户中使用的GB数量时出错

When I upload a video in my website, its size is saved in the database. And then, I use these functions to get the amount of gygabites left in the account used.

    public static function Capacidad($user){
        $sql = "SELECT tipocuenta.id, tipocuenta.capacidad FROM tipocuenta, canal WHERE tipocuenta.id = canal.id_tipocuenta AND canal.id = '$user'";
        $resultado = self::Conexion($sql);

        if(isset($resultado)){ $datos = $resultado->fetch(); }

        $capacidad = $datos["capacidad"];

        return $capacidad;
    }

    public static function CapacidadUsada($user){
        $sql = "SELECT sum(tamaño) FROM video WHERE usuario_id = '$user'";
        $resultado = self::Conexion($sql);
        return $resultado;
    }

    public static function CapacidadUsadaGB(){
        $capacidad_total = Database::Capacidad($_SESSION["usuario"]);
        $capacidad_usada = Database::CapacidadUsada($_SESSION["usuario"]);

        $capacidad_usadaGB = number_format($capacidad_usada / 1073741824, 2)."GB";

        return $capacidad_usadaGB;
    }

I get the amount of GB that an user can use and the amount of GB that the user have used uploading videos. But it doesnt work... It prints me this error:

Notice: Object of class PDOStatement could not be converted to int
  • 写回答

1条回答 默认 最新

  • 普通网友 2015-08-31 15:01
    关注

    The function CapacidadUsada() returns a result set, not a number. That's why the line number_format($capacidad_usada / 1073741824, 2) would throw an error.

    Update the CapacidadUsada() function to return a number, just like Capacidad():

    public static function CapacidadUsada($user){
        $sql = "SELECT sum(tamaño) AS usada FROM video WHERE usuario_id = '$user'";
        $resultado = self::Conexion($sql);
    
        if(empty($resultado)) 
            throw new Exception('Error retrieving usage.');
        $datos = $resultado->fetch();
    
        return $datos['usada'];
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥100 求数学坐标画圆以及直线的算法
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable
  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 自己瞎改改,结果现在又运行不了了
  • ¥15 链式存储应该如何解决
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站