Ir ao conteúdo
  • Cadastre-se

Função somar coluna com PHP PDO


Posts recomendados

Boa noite Pessoal, preciso de uma ajuda para criar uma Função para Somar a coluna de uma tabela de forma genérica, eu tenho uma função de listar e quero fazer uma função parecida.

Abaixo segue a minha conexão que por padrão seta UTF-8 para não ter problemas com o banco de dados, a também seta por padrão PDO::FETCH_OBJ, então na mesma linha da função listar, quero fazer também a função somar, para no caso quero recuperar a quantidade de avaliações de um determinado produto para fazer uma média de avaliações por exemplo.

 

Vou no banco de dados recupero através da função a quantidade de pessoas que avaliaram o produto e somo cada voto que foi dado ao produto e faço uma média geral de cada produto.

 

//error_reporting(E_ALL); ini_set('display_errors', 1);
function conectar(){
try{
  $con = new PDO('mysql:host='.HOST.';dbname='.DBSA, USER, PASS, array(
  PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8",
  PDO::MYSQL_ATTR_INIT_COMMAND => "SET CHARACTER SET utf8"
  ));
  $con->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  $con->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_OBJ);//Já seta FETCH_OBJ por padrão na conexão
  return $con;
}catch(PDOException $e){
  echo 'ERROR:'.$e->getMessage();
}
}

function listar($tabela,$cond){
  $con = conectar();
  $listar = $con->prepare("SELECT * FROM {$tabela} {$cond}");
  $listar->execute();
  $listar->rowCount();
  return $listar;
}//Função listar com PHP PDO

function somar($coluna, $tabela, $cond){
  $con = conectar();
  $listar = $con->prepare("SELECT SUM({$coluna}) AS soma FROM {$tabela} {$cond}");
  $listar->execute();
  $listar->rowCount();
  $total = 0;
  return $total;
}//Esta função quero implementar, porém, não estou conseguindo fazer

 

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...