Rekenen met een select

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Bob Beer

Bob Beer

16/02/2007 15:39:00
Quote Anchor link
Hallo gasten,

Ik ben bezig op dit moment om een berekening in een formulier te maken, waarbij alleen de waarden van een geselecteerd vinkje opgeteld moeten worden. Nu heb ik de onderstaande code, maar ik weet eigenlijk niet precies hoe ik dit kan berekenen.

Zou iemand er even naar willen kijken?
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
15
16
17
18
19
20
<form action="" method="POST">
<table>
<tr>
    <td>Plaatje</td>
    <td>Bedrag</td>
    <td>Indien geselecteerd<br> --> bij bedrag?</td>
  </tr>
  <? $ResultListFormVergoeding = mysql_query("Select * from dcms_BetaalData where btldPartnerId = '".$_POST[partnerId]."' AND btldToegekent = '1'");
  while ($RegelListFormVergoeding = mysql_fetch_array($ResultListFormVergoeding))
  {
?>

  <tr>
    <td><img src="<? echo $RegelListFormVergoeding[btldFotoUrl]; ?>" width="60"></td>
    <td><? $RegelTotaal = ($RegelListFormVergoeding[btldVrgPartner]*$RegelListFormVergoeding[btldAantal]);?>
    &euro;<? printf("%5.2f",$RegelTotaal); ?></td><td><div align="center">
      <input type="checkbox" checked name="uitbetalen" value="1" onchange="submit()">
      </div></td>
  </tr><? $Totaal += ($RegelListFormVergoeding[btldVrgPartner]*$RegelListFormVergoeding[btldAantal]);?><? }  ?>
</table>
</form>
Totaal geselecteerd = &euro; <? printf("%5.2f",$Totaal); ?>

Ik weet dat ik in de $Totaal moet toevoegen dat het alleen maar om bedragen gaat die geselecteerd worden, maar ik kan dit niet vinden hoe dit er dan precies uit moet komen te zien.


Groetjes,

Rob
Gewijzigd op 01/01/1970 01:00:00 door Bob Beer
 
PHP hulp

PHP hulp

17/05/2024 01:51:45
 
Jurgen assaasas

Jurgen assaasas

16/02/2007 15:43:00
Quote Anchor link
gebruik javascript, je kunt nooit 'live' rekenen met PHP, je kunt natuurlijk wel met de waardes uit PHP rekenen in JS(MAAR NIET ANDERSOM!)
 
PHP Newbie

PHP Newbie

16/02/2007 15:45:00
Quote Anchor link
Jurgen schreef op 16.02.2007 15:43:
gebruik javascript, je kunt nooit 'live' rekenen met PHP, je kunt natuurlijk wel met de waardes uit PHP rekenen in JS(MAAR NIET ANDERSOM!)


Kan prima, gewoon d.m.v. AJAX de javascript waarden naar een php bestand sturen, en vervolgens met een echo de uitkomst weergeven die je terug krijgt..
 
Jurgen assaasas

Jurgen assaasas

16/02/2007 15:47:00
Quote Anchor link
PHP Newbie schreef op 16.02.2007 15:45:
Jurgen schreef op 16.02.2007 15:43:
gebruik javascript, je kunt nooit 'live' rekenen met PHP, je kunt natuurlijk wel met de waardes uit PHP rekenen in JS(MAAR NIET ANDERSOM!)


Kan prima, gewoon d.m.v. AJAX de javascript waarden naar een php bestand sturen, en vervolgens met een echo de uitkomst weergeven die je terug krijgt..



klopt maar met plain PHP niet.
 
Bob Beer

Bob Beer

16/02/2007 15:47:00
Quote Anchor link
Ok, maar het direct weergeven is niet zozeer het probleem, ik zal er uiteraard wel naar kijken, maar het probleem is meer dat ik de waarden wil optellen van de data die geselecteerd is.

Ik heb inmiddels de titel even aangepast ;)
Gewijzigd op 01/01/1970 01:00:00 door Bob Beer
 
Jurgen assaasas

Jurgen assaasas

16/02/2007 15:52:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php

if(!is_numeric($_POST['field']) || !is_numeric($_POST['field'])){

echo'De waardes zijn geen integers';


}
else{
$uitkomst = $_POST['field'] + $_POST['field1'];

echo $uitkomst;
}

?>


ZoietS?
Gewijzigd op 01/01/1970 01:00:00 door Jurgen assaasas
 
Bob Beer

Bob Beer

16/02/2007 15:57:00
Quote Anchor link
Dank je Jurgen,

Maar het probleem in jouw code is dat er volgens mij nergens staat dat alleen de rijen die geselecteerd worden opgeteld moeten worden.

Misschien moet ik het iets duidelijker uitleggen.

Je hebt een lijst die uit de database gehaald wordt waarin bedragen opgeroepen worden. Nou wil ik dat de waarden die de gebruiker zelf kan selecteren opgeteld worden. Onderaan de lijst moeten dan de bedragen die aangevinkt staan opgeteld worden.

Is dit misschien iets duidelijker?

Groetjes,

Rob
Gewijzigd op 01/01/1970 01:00:00 door Bob Beer
 
Jesper Diovo

Jesper Diovo

16/02/2007 16:30:00
Quote Anchor link
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
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<form method='post' action='<?php echo $_SERVER['PHP_SELF']; ?>'>
<table border='0'>
<tr>
<td><input type='checkbox' name='field1' value='1' /></td>
<td>1</td>
</tr>
<tr>
<td><input type='checkbox' name='field2' value='2' /></td>
<td>2</td>
</tr>
<tr>
<td><input type='submit' value='Reken uit!' /></td>
<td></td>
</tr>
</table>
</form>

<?php
if($_SERVER['REQUEST_METHOD'] == 'POST')
{

if(isset($_POST['field1']))
{

$field1 = $_POST['field1'];
}
else{
$field1 = 0;
}

if(isset($_POST['field2']))
{

$field2 = $_POST['field2'];
}
else{
$field2 = 0;
}


$uitkomst = $field1 + $field2;
echo $uitkomst;
}

?>


Misschien zoiets?
Gewijzigd op 01/01/1970 01:00:00 door Jesper Diovo
 
Bob Beer

Bob Beer

16/02/2007 16:40:00
Quote Anchor link
Ja hier zit iets in. Ik moet de checkbox de waarde van de regel meegeven. Ik heb hem nu waarde 1 meegegeven. Ik ga eens verder puzzelen.

Tnx
 
Jesper Diovo

Jesper Diovo

16/02/2007 16:40:00
Quote Anchor link
Succes ;)
 
PHP Newbie

PHP Newbie

16/02/2007 18:52:00
Quote Anchor link
Ik heb het niet getest, maar zoiets wil je denk ik:

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
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
<?php
    $prijs
[0] = 5;
    $prijs[1] = 10;
    $prijs[2] = 7.50;
    
    if($_SERVER['REQUEST_METHOD'] == 'POST')
    {

        $totaal = 0;
        
        for($i = 0; $i =< count($prijs); $i++)
        {

            if(isset($_POST['checkbox'][$i]) && !empty($_POST['aantal'][$i]))
            {

                $totaal += $_POST['aantal'][$i] * $prijs[$i];
            }
        }
    }

?>

<form action="#" method="post">
    <?php
        if(isset($totaal))
        {

            echo $totaal.'<br /><br />';
        }

    ?>

    <table>
        <tr>
            <td>
                <input name="checkbox[0]" type="checkbox" />
            </td>
            <td>
                <input name="aantal[0]" type="text" />
            </td>
            <td>
                &aacute; <?php echo $prijs[0]; ?>
            </td>
        </tr>
        <tr>
            <td>
                <input name="checkbox[1]" type="checkbox" />
            </td>
            <td>
                <input name="aantal[1]" type="text" />
            </td>
            <td>
                &aacute; <?php echo $prijs[1]; ?>
            </td>
        </tr>
        <tr>
            <td>
                <input name="checkbox[2]" type="checkbox" />
            </td>
            <td>
                <input name="aantal[2]" type="text" />
            </td>
            <td>
                &aacute; <?php echo $prijs[2]; ?>
            </td>
        </tr>
    </table>
</form>
 



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.