PHP - Acumulador de Saldo

 
Vista:
sin imagen de perfil
Val: 18
Ha aumentado su posición en 6 puestos en PHP (en relación al último mes)
Gráfica de PHP

Acumulador de Saldo

Publicado por Jesus (11 intervenciones) el 21/05/2019 16:52:16
Hola, buenas tardes.
Tengo un problema que la verdad no se en que fallo,bueno si que se donde fallo lo que me pasa es que no se que añadir para que funcione correctamente, os pongo en situacion, tengo 3 clientes de los cuales 2 son de Sevilla y 1 de Burgos, todos tienen un par de cuentas bancarias asignadas, lo que quiero hacer es que me saque el saldo total de esas cuentas, pero por Localidad, es decir el saldo total de cada una de sus localidades, el problema le tengo al final, lo que hago es crear un array donde almacenar las ciudades, para que solo me aparezcan 1 vez aunque se repitan pero a la hora de los saldos se me suma uno encima de otro y me salen la suma total, no se que me falta, tambien se que explico mal pero bueno, si teneis alguna idea o pregunta decidme, os adjunto el codigo.
Gracias
Un saludo

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<html>
	<head>
		<title></title>
	</head>
	<body>
		<?php
		session_start();
		include "datosconexion.php";
		$acum=array();
		$enlace=mysqli_connect(HOST,USER,PASSWORD,DATABASE);
		$person=0;
        //calculamos el saldo total de todas la cuentas
        $sql="SELECT * FROM clientes";
        $resultado=mysqli_query($enlace,$sql);
        while($ciudad=mysqli_fetch_array($resultado)){
            $localidad=$ciudad['localidad'];
            $dni=$ciudad['dni'];
            $SQL="SELECT * FROM clientes, cuentas WHERE dni_tit='$dni'";
            $resultado1=mysqli_query($enlace,$SQL);
        }
        while($client=mysqli_fetch_array($resultado1)){
            $saldo1=$client['saldo'];
            $dni1=$client['dni'];
            if(!isset($acum['ciudad'])and (!isset($acum['dinero']))){
                $acum['ciudad']=$localidad;
                $acum['dinero']=$saldo;
            }else{
                $acum['ciudad']=$localidad;
                $acum['dinero']+=$saldo;
                $loc=$acum['ciudad'];
                $din=$acum['dinero'];
                echo "En la ciudad de $loc hay $din.<br/>";
            }
        }
 
		?>
	</body>
</html>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Kathyu
Val: 1.802
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Acumulador de Saldo

Publicado por Kathyu (905 intervenciones) el 21/05/2019 18:13:42
Veamos, tiene 2 clientes de Sevilla (A) y 1 de Burgos (b)

A1 = 100
A2 = 150
B1 = 175

Y lo que quiere es que el sistema le sume por localidad??

Sevilla = 250
Burgos = 175

Es eso? y si es así, porque no hace consultas en base a localidades?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 18
Ha aumentado su posición en 6 puestos en PHP (en relación al último mes)
Gráfica de PHP

Acumulador de Saldo

Publicado por Jesus (11 intervenciones) el 21/05/2019 18:17:00
Si, entiendo lo que dices, pero tambien a la hora de hacer las consultas en base a las localidades me ocurre lo mismo, el problema lo tengo como digo a la hora de sumar los saldos que se me suman uno encima de otro, es decir en el ejmplo que me has puesto seria 425 en Burgos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Mauro
Val: 2.761
Oro
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Acumulador de Saldo

Publicado por Mauro (1034 intervenciones) el 22/05/2019 19:09:40
Cómo llegas a 425?

Yo te recomendaría resolver el problema directo en SQL.

Si lo que quieres es el saldo total por localidad, algo como:

1
SELECT ciudad, SUM(dinero) FROM clientes GROUP BY ciudad
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar