Sessions; getallen optellen
Hoi,
ik heb een formulier gemaakt met één inputveld waar je een getal in kan vullen. Ik wil de getallen die ik invoer bij elkaar optellen. Het is al wel gelukt om bij te houden hoeveel getallen ik ingevoerd heb en om die teller weer op 0 te zetten. Maar hoe tel ik getallen die ik invoer bij elkaar op???
ik heb een formulier gemaakt met één inputveld waar je een getal in kan vullen. Ik wil de getallen die ik invoer bij elkaar optellen. Het is al wel gelukt om bij te houden hoeveel getallen ik ingevoerd heb en om die teller weer op 0 te zetten. Maar hoe tel ik getallen die ik invoer bij elkaar op???
laat ons je script zien, dan hebben we beter beeld van wat je bedoeld??
en optellen kan je gewoon zo doen
en optellen kan je gewoon zo doen
Zo onduidelijk was het toch niet? $a + $b snap ik ook wel.
Ik heb 1 inputveld in m'n HTML-formulier. Daar vul ik een getal in (bijv. 5). Ik druk op een button en de output is 5. Als ik in datzelfde inputveld nog een getal (bijv. 7) invoer, moet de output 12 zijn. Als ik daarna 8 invoer, moet de output 20 zijn.
Dit is wat ik heb, alleen de teller en het opnieuw beginnen. Van het optellen heb ik geen idee.
Ik heb 1 inputveld in m'n HTML-formulier. Daar vul ik een getal in (bijv. 5). Ik druk op een button en de output is 5. Als ik in datzelfde inputveld nog een getal (bijv. 7) invoer, moet de output 12 zijn. Als ik daarna 8 invoer, moet de output 20 zijn.
Dit is wat ik heb, alleen de teller en het opnieuw beginnen. Van het optellen heb ik geen idee.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
if($_SESSION['getal'] != 0)
{
$_SESSION['tel']++;
echo $_SESSION['tel'];
}
else
{
session_destroy();
echo "Start opnieuw";
$_SESSION['tel'] = 0;
}
{
$_SESSION['tel']++;
echo $_SESSION['tel'];
}
else
{
session_destroy();
echo "Start opnieuw";
$_SESSION['tel'] = 0;
}
Gewijzigd op 02/10/2010 13:14:22 door Pim B
Wat snap je nu dan niet?
Het is gewoon $_SESSION['naamvanwaardediedeoutputgenereert'] += $_POST['naamvaninputveld']...
Het is gewoon $_SESSION['naamvanwaardediedeoutputgenereert'] += $_POST['naamvaninputveld']...
Dit is de hele code:
Code (php)
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
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php
session_start();
if(isset($_POST['getal']))
{
$_SESSION['getal'] = $_POST['getal'];
if(isset($_SESSION['getal']))
{
if($_SESSION['getal'] != 0)
{
$_SESSION['tel']++;
}
else
{
session_destroy();
echo "Start opnieuw";
$_SESSION['tel'] = 0;
}
}
}
?>
session_start();
if(isset($_POST['getal']))
{
$_SESSION['getal'] = $_POST['getal'];
if(isset($_SESSION['getal']))
{
if($_SESSION['getal'] != 0)
{
$_SESSION['tel']++;
}
else
{
session_destroy();
echo "Start opnieuw";
$_SESSION['tel'] = 0;
}
}
}
?>
Fijn. En nu?
en wat is nu het nut van de volgende controle:
if(isset($_SESSION['getal']))
daarboven declareer je al $_SESSION['getal'] = $_POST['getal'], dus bestaan doet ie altijd
if(isset($_SESSION['getal']))
daarboven declareer je al $_SESSION['getal'] = $_POST['getal'], dus bestaan doet ie altijd
Nu wil ik alle getallen die ik invoer bij elkaar optellen.
Nog een keer:
Ik heb 1 inputveld in m'n HTML-formulier. Daar vul ik een getal in (bijv. 5). Ik druk op een button en de output is 5. Als ik in datzelfde inputveld nog een getal (bijv. 7) invoer, moet de output 12 zijn. Als ik daarna 8 invoer, moet de output 20 zijn.
Nog een keer:
Ik heb 1 inputveld in m'n HTML-formulier. Daar vul ik een getal in (bijv. 5). Ik druk op een button en de output is 5. Als ik in datzelfde inputveld nog een getal (bijv. 7) invoer, moet de output 12 zijn. Als ik daarna 8 invoer, moet de output 20 zijn.
Ja, waar kom je dan niet uit?
Je weet hoe je moet optellen zeg je.
Je weet vast hoe je met forms werkt.
Je weet hoe je met sessions werkt.
Wat is je probleem?
Je weet hoe je moet optellen zeg je.
Je weet vast hoe je met forms werkt.
Je weet hoe je met sessions werkt.
Wat is je probleem?
Ik weet niet hoe ik ze moet optellen. Ik kan wel bijhouden hoeveel getallen ik heb ingevoerd. Ik ben net met sessions begonnen, dus ik denk dat daar ergens het probleem ligt.
Wat is je probleem nou, je weet hoe je moet optellen.
Het zijn allemaal variabelen.
Net $a of $b.
Dus test maar eens wat.
Het zijn allemaal variabelen.
Net $a of $b.
Dus test maar eens wat.
Nee daar ligt maar gedeeltelijk het probleem, het probleem ligt bij het feit dat jij niet weet dat 1 + 1 (=) 2 is.
Bekijk nog eens de post van Yusuf Azer en vertaal dat dan eens naar je code toe
Bekijk nog eens de post van Yusuf Azer en vertaal dat dan eens naar je code toe
Het probleem is dat ik maar 1 variabele heb: uit m'n formulier haal ik $_POST['getal']. Die stel ik gelijk aan $_SESSION['getal'].
Alle getallen komen in dezelfde variabele terecht. Hoe tel ik al die getallen dan op?
Alle getallen komen in dezelfde variabele terecht. Hoe tel ik al die getallen dan op?
Wanneer moet je die $_POST aan $_SESSION var gelijk stellen? En wanneer moet je hem optellen?
Dat moet je testen uitvinden.
En dan kan je optellen.
Toevoeging op 02/10/2010 16:20:25:
Wanneer moet je die $_POST aan $_SESSION var gelijk stellen? En wanneer moet je hem optellen?
Dat moet je testen uitvinden.
En dan kan je optellen.
Dat moet je testen uitvinden.
En dan kan je optellen.
Toevoeging op 02/10/2010 16:20:25:
Wanneer moet je die $_POST aan $_SESSION var gelijk stellen? En wanneer moet je hem optellen?
Dat moet je testen uitvinden.
En dan kan je optellen.
Waar de session voor dient is mij een vraag.
Maar okee, dit is wat ik er van snap.
Maar okee, dit is wat ik er van snap.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
session_start();
if(isset($_POST['getal']))
{
$_SESSION['getal'] = $_POST['getal'];
$array = explode(' ', $_SESSION['getal']);
if(count($array) == 1 and $array[0] == 0)
{
session_destroy();
echo "Start opnieuw";
}
else
{
$totaal = array_sum($array);
echo 'Totaal is: ' . $totaal;
}
}
else
{
echo 'Nog niks ingevoerd.';
}
?>
session_start();
if(isset($_POST['getal']))
{
$_SESSION['getal'] = $_POST['getal'];
$array = explode(' ', $_SESSION['getal']);
if(count($array) == 1 and $array[0] == 0)
{
session_destroy();
echo "Start opnieuw";
}
else
{
$totaal = array_sum($array);
echo 'Totaal is: ' . $totaal;
}
}
else
{
echo 'Nog niks ingevoerd.';
}
?>
Gewijzigd op 02/10/2010 16:31:29 door - SanThe -




