Jump to content
Fórum Script Brasil
  • 0

somar valores com SUM não soma


tonzinhu

Question

Bom dia amigos,

estou tentando fazer uma soma e não estou conseguindo de forma alguma.

já tentei com SUM e array_sum e não soma, ele simplesmente mostra cada valor separado.

Ex: 3 clientes com mensalidades de 50,00 cada um.

Em vez de retornar 150,00 ele retorna 50,00 50,00 50,00.

segue o script e espero que consigam me ajudar.

if($cliente == ""){

if($mes == ""){

$seleciona = mysql_query("SELECT * FROM pagamentos WHERE status='$status'") or die(mysql_error());

while($l = mysql_fetch_array($seleciona)){

extract($l);

$c = mysql_query("SELECT * FROM clientes WHERE idcliente='$idcliente' ");

$cl = mysql_fetch_array($c);

$id_c = $idcliente;

extract($cl);

print '<tr><td>'.$nome.$idpag.'</td> <td>'.$mes.'</td> <Td>'.$mensalidade.'</td></tr>';

$s = mysql_query("SELECT SUM(valor) as total FROM pagamentos WHERE idpag='$idpag'");

$r_s = mysql_fetch_array($s);

print $r_s['total'];

}

}

Link to comment
Share on other sites

5 answers to this question

Recommended Posts

  • 0

está como double amigo.

como os dados estão vindo do banco fiz dessa forma com array_sum:

tentei assim:

peguei os valores e joguei no array.

$array = array($mensalidade);

print array_sum($array);

só que imprimir do mesmo jeito: 50,00 40,00 40,00 e não a soma de todos.

uma coisa que achei estranho foi quando dei um print_r saiu:

Array ( [0] => 40.00 ) Array ( [0] => 69.23 ) Array ( [0] => 40.00 )

os indices estão todos como 0 e não em sequencia.

Link to comment
Share on other sites

  • 0

O array_sum só vai funcionar se você tiver um array de uma dimensão. Nesta caso você tem um array de 2 dimensões.

Fiz um exemplo que pode te ajudar.

$arr = array(
    array(50.00), 
    array(50.00), 
    array(60.00)
);

print_r($arr);
//Saida
//Array ( [0] => Array ( [0] => 50 ) [1] => Array ( [0] => 50 ) [2] => Array ( [0] => 60 ) )



foreach($arr as $k => $v) {
    $resultado += $v[0];
}


echo 'Resultado : ' . $resultado;
// Saida
// Resultado : 160

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...