Telt op niet af

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Dennis Ham

Dennis Ham

05/09/2009 20:43:00
Quote Anchor link
Hallo iedereen,
mischien een stom vraagje maar ik kom er even niet uit. Ik wil gewoon twee variabelen van elkaar aftrekken maar ze tellen steeds bij elkaar op, het gaat om de $verschil

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
while(!($zoekresultaten==0))
{
    $dat_s = strtotime($zoekresultaten["datum"]);
    $dat = date("d-m-Y",$dat_s);
    ?>
<tr><td>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?   echo $zoekresultaten["id"];?>

</td><td>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?   echo $dat;?>

</td><td align="right">
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?   echo "€ ".number_format($zoekresultaten["bedrag"],2, ',', '.');?>

</td><td>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?   echo $zoekresultaten["afbij"];?>

</td><td>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?   echo $zoekresultaten["aanvan"];?>

</td><td>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?   echo $zoekresultaten["omschrijving"];?>

</td><td><a href="kwitantie2.php?id=
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?   echo $zoekresultaten["id"];?>

" target="_blank">kwitantie</a></td></tr>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?       if ($zoekresultaten["afbij"]=="Af")
        {

            $totaalaf=$totaalaf-$zoekresultaten["bedrag"];
        }

          else
        {
          $totaalbij=$totaalbij+$zoekresultaten["bedrag"];
        }

    $zoekresultaten=mysql_fetch_array($zoekresultaten_query);
}

$verschil=0;
$verschil=$totaalaf-$totaalbij;
echo $verschil;
?>


</table><br><br>
<b>Periodetotalen:</b><br><br>
Totaal bij:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? echo "€ ".number_format($totaalbij,2, ',', '.');?>

Totaal af:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? echo "€ ".number_format($totaalaf,2, ',', '.');?>

Verschil: <b><font color="
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?
if (($verschil)>=0)
{

?>
green
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<? }
  else
{
?>
red
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? } ?>
">
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? echo "€ ".number_format($verschil,2, ',', '.');?>
</font></b>
<p></p>
Gewijzigd op 01/01/1970 01:00:00 door Dennis Ham
 
PHP hulp

PHP hulp

25/11/2024 17:16:23
 
Noppes

Noppes

05/09/2009 21:06:00
Quote Anchor link
Tja, ik snap niet wat je moelijk zit te doen, je kan het toch oplossen met SQL
Gewijzigd op 01/01/1970 01:00:00 door Noppes
 
Whatever Whatever

Whatever Whatever

05/09/2009 21:18:00
Quote Anchor link
Moet het niet $totaalbij-$totaalaf zijn? Is toevallig niet anders het $totaalbij bedrag negatief? Ik ben het wel eens met Noppes, waarom niet gewoon door de database laten berekenen?
 
Dennis Ham

Dennis Ham

05/09/2009 21:41:00
Quote Anchor link
De gegevens komen uit een database en wordt weergegeven en dus geen nut om dat terug te zetten in SQL.
Wat raar is is dat als ik het andersom doet de bedragen nog steeds opgeteld wordt met een - teken ervoor.
 
Noppes

Noppes

06/09/2009 09:07:00
Quote Anchor link
Dennis, de oplossing is dat je het met de juiste query uit de database haalt en dan op het scherm toont. Dus je moet het niet proberen op te lossen in php!
 
Jan Koehoorn

Jan Koehoorn

06/09/2009 10:27:00
Quote Anchor link
Dennis schreef op 05.09.2009 21:41:
De gegevens komen uit een database en wordt weergegeven en dus geen nut om dat terug te zetten in SQL.

Het gaat er niet om dat je het terugzet in je DB. Het gaat er om dat je de uitkomst door je DB laat berekenen. Dus gewoon in je query:
SELECT (veld1 - veld2) AS verschil
 
Rick kem

rick kem

06/09/2009 12:41:00
Quote Anchor link
Het kan natuurlijk ook zo:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
$totaal
= ($row['veld1'] - $row['veld2']);

echo $totaal;
?>
Gewijzigd op 01/01/1970 01:00:00 door rick kem
 
Jesper Diovo

Jesper Diovo

06/09/2009 13:11:00
Quote Anchor link
@Rick: Als SQL het kan uitvoeren, doe het met SQL. Dat is vele malen sneller dan het eerst nog te fetchen, en dan nog eens de handeling uit te moeten voeren met PHP.
 
Dennis Ham

Dennis Ham

06/09/2009 16:51:00
Quote Anchor link
Bedankt iedereen! maar de oplossing was makliker dan ik dacht. - - wordt plus, dus als ik ze optel dan wordt het +- wat ze van elkaar aftrek.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?
$verschil
=$totaalaf+$totaalbij;
?>


er is nog een ander probleempje met de volgende if statement. Een negatief
getal wordt groen en een positief getal wordt blauw. Waar die blauw vandaan komt is my een raadsel. Mischien weet iemand daar een oplossing voor

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
Verschil: <b><font color="
<?
if (($verschil)>=0)
{

?>
green<? }
  else
{
?>
red<? } ?>"><? echo "€ ".number_format($verschil,2, ',', '.');?></font></b>
 
Whatever Whatever

Whatever Whatever

06/09/2009 17:09:00
Quote Anchor link
@Dennis, is die oplossing niet precies wat ik in mijn post al had gezegd ... :D

Komt die "blauw" niet toevallig doordat er een link omheen staat ofzo? (<a>)
 
Dennis Ham

Dennis Ham

06/09/2009 17:16:00
Quote Anchor link
Totaalbij en totaalaf omruilen blijft optellen, maar met een + ertussen trekt af. Je had wel gelijk dat totaalaf negatief is.
Je kan de hele code in me eerste post bekijken, geen <a> omheen.
 
Steen

steen

06/09/2009 18:06:00
Quote Anchor link
Plaats er eens bij:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
echo '<pre>'.print_r( $zoekresultaten,true).'</pre>';
?>
Gewijzigd op 01/01/1970 01:00:00 door steen
 
Dennis Ham

Dennis Ham

07/09/2009 03:46:00
Quote Anchor link
@steen Ik heb het toegevoegd maar dat deed niets.

Ik heb het opgelost met

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
Verschil: <b><span class="caution" style="color:
<?
if (($verschil)<0)
{

?>
red<? }
  else
{
?>
green<? } ?>"><? echo "€ ".number_format($verschil,2, ',', '.');?></font></b>


span class="caution" overrides de stylesheet als je een kleur eenmalig voor een stukje tekst nodig heb.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.