berekening van input velden
Ik wil graag een formulier maken dat berekend hoeveel het kost om bv. 4 foto's te bestellen
hier de code
Code (php)
1
2
3
2
3
<td height="30" align="left"><div align="right">Aantal foto's <</td>
<td height="30" align="left"><label>
<5 foto's bestel kosten die 30 euro maar als ik er 8 bestel 50 euro
<td height="30" align="left"><label>
<5 foto's bestel kosten die 30 euro maar als ik er 8 bestel 50 euro
iemand een idee ik was aan het denken om
ik weet niet of dit ook kan
Code (php)
1
2
3
4
5
6
2
3
4
5
6
iemand een idee ik was aan het denken om
$foto= $_post['foto'*6]
Alvast bedankt
Arjan
$foto= $_post['foto'*6]
Alvast bedankt
Arjan
Gewijzigd op 12/07/2010 20:15:42 door Arjan jansen
Je eerste poging zal werken. Je tweede niet.
Let er wel op dat bij je eerste poging de variabele een min-teken bevat. Dit is niet toegestaan in een variabele naam. Dus deze moet dan nog wel weg.
Je tweede kan wel werken als je: $_POST['foto']*6; doet.
Trouwens, je vergeet telkens je regel af te sluiten met een puntkomma;
Ook is het $_POST en niet $_post.
Gewijzigd op 12/07/2010 20:43:06 door Mark L
Dus bij meer foto's gaat de prijs omhoog .... Grappig.
5 * 6 = 30
8 * 6 =
$_POST is met hoofdletters.
Code (php)
ofzoiets :P
owja en dit
gaat dus echt NIET werken :P
- ten 1ste kan dat nooit "true" zijn
- het lijkt nog het meeste op het declareren van een variabel maar dan moet er voor de = geen - ofzo komen
- het kan ook nog een if voorstellen maar dan moet het meer zoiets zijn
Gewijzigd op 12/07/2010 23:27:22 door stefan Renne
als je scrpt dus zou nemen en even aanpas na dit
Code (php)
als ik dit doe werk het dan zo altijd 1 als ik 3 wil krijg ik dus een bedrag van 425
Bedankt alvast
Arjan
}elseif ($aantal=1){
wordt dan:
}elseif ($aantal==1){
Gewijzigd op 13/07/2010 21:45:55 door Obelix Idefix
Invalid argument supplied for foreach()
waar kan ik zien wat dit inhoud???????????
Bedankt
Arjan
Dan zul je wel geen array hebben meegegeven.
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
26
27
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
<?php
$aantal=1;
// check eerst of het wel een array() is
foreach ($_POST['foto'] as $key => $value) {
// wat is het nut van alleen een tellertje ophogen
$aantal++;
}
// $aantal zal nooit kleiner dan nul zijn
if ($aantal<0){
echo 'ERROR!';
// in een vergelijking gebruik je == want = is een toekenning
}elseif ($aantal=1){
$een = 375;
// wat doet dat * teken daar?
$prijs = $een*;
}elseif ($aantal<=2){
$ps_prijs= 25;
// $een is hier niet bekend
$prijs = $ps_prijs*$aantal+$een;
}
// $prijs bestaat niet altijd (zie eerste if())
echo $prijs;
?>
$aantal=1;
// check eerst of het wel een array() is
foreach ($_POST['foto'] as $key => $value) {
// wat is het nut van alleen een tellertje ophogen
$aantal++;
}
// $aantal zal nooit kleiner dan nul zijn
if ($aantal<0){
echo 'ERROR!';
// in een vergelijking gebruik je == want = is een toekenning
}elseif ($aantal=1){
$een = 375;
// wat doet dat * teken daar?
$prijs = $een*;
}elseif ($aantal<=2){
$ps_prijs= 25;
// $een is hier niet bekend
$prijs = $ps_prijs*$aantal+$een;
}
// $prijs bestaat niet altijd (zie eerste if())
echo $prijs;
?>
Gewijzigd op 14/07/2010 00:00:18 door - SanThe -
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
26
27
28
29
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
<?php
$eerste_foto = 375;
$volgende_foto = 25;
if(isset($_POST['foto']) and is_array($_POST['foto']))
{
$aantal = count($_POST['foto']);
}
else
{
$aantal = 0;
}
if ($aantal == 0)
{
echo 'Niks besteld<br />';
$prijs = 0;
}
elseif ($aantal == 1)
{
$prijs = $eerste_foto;
}
elseif ($aantal >= 2)
{
$prijs = $eerste_foto + $volgende_foto * ($aantal -1);
}
echo 'Aantal is ' . $aantal . '<br />Prijs is ' . $prijs;
?>
$eerste_foto = 375;
$volgende_foto = 25;
if(isset($_POST['foto']) and is_array($_POST['foto']))
{
$aantal = count($_POST['foto']);
}
else
{
$aantal = 0;
}
if ($aantal == 0)
{
echo 'Niks besteld<br />';
$prijs = 0;
}
elseif ($aantal == 1)
{
$prijs = $eerste_foto;
}
elseif ($aantal >= 2)
{
$prijs = $eerste_foto + $volgende_foto * ($aantal -1);
}
echo 'Aantal is ' . $aantal . '<br />Prijs is ' . $prijs;
?>
sante niet bumpen :D (wilde het altijd al een keer zeggen :) )
Het mag hoor, het is een nieuwe dag :p
Ik heb het voorbeeld van Santhe gebruikt
Nu is mijn vraag de berekening wil ik laten weergeven in bereken.php dat heb ik het form ingegeven maar moet ik dan de code van Santhe in bereken.php plaatsen of gewoon op de website waar het formulier staat
alvast bedankt
Ik heb nu deze code in html
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
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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
<form id="form1" name="form1" method="POST" action="kosten.php">
<table width="700" border="0" align="center" cellpadding="0" cellspacing="0" class="tekst">
<tr>
<td width="24%" height="30">Ontwerp huisstijl </td>
<td width="14%" height="30"><label>
<input name="huisstijl" type="radio" value="1" />
Ja
<input name="huisstijl" type="radio" value="0" checked="checked" />
Nee</label></td>
<td width="6%" height="30"><a href="#" title="Kies voor ja als u nog geen eigen huisstijl heeft of als deze niet digitaal aangeleverd kan worden."><img src="images/info.gif" width="19" height="17" hspace="5" vspace="3" border="0" /></a></td>
<td width="34%" height="30"><div align="right">Aantal pagina's </div></td>
<td width="16%" height="30"><label>
<input name="paginas" type="text" id="paginas" value="0" size="3" />
</label></td>
<td width="6%" height="30"><a href="#" title="Het aantal statische pagina's binnen de site. Hier gelden niet de pagina's uit een database als bijvoorbeeld een artikelbestand."><img src="images/info.gif" width="19" height="17" hspace="5" vspace="3" border="0" /></a></td>
</tr>
<tr>
<td height="30">Nieuwsbrief</td>
<td height="30"><input name="nieuwsbrief" type="radio" value="1" />
Ja
<input name="nieuwsbrief" type="radio" value="0" checked="checked" />
Nee</td>
<td height="30"><a href="#" title="Met een nieuwsbriefsysteem is het mogelijk een door uzelf onderhouden pagina met n klik als mail te versturen naar alle e-mail adresssen in een database"><img src="images/info.gif" width="19" height="17" hspace="5" vspace="3" border="0" /></a></td>
<td height="30"><div align="right">Aantal foto's </div></td>
<td height="30"><label>
<input name="fotos" type="text" id="fotos" value="0" size="3" />
</label></td>
<td height="30"><a href="#" title="Het aantal foto's op uw site. Hier gelden niet de foto's die u zelf plaatst in bijvoorbeeld een catalogus of met een CMS."><img src="images/info.gif" width="19" height="17" hspace="5" vspace="3" border="0" /></a></td>
</tr>
<tr>
<td height="30">CMS-systeem </td>
<td height="30"><input name="cms" type="radio" value="1" />
Ja
<input name="cms" type="radio" value="0" checked="checked" />
Nee</td>
<td height="30"><a href="#" title="Met een CMS-systeem is het mogelijk zelf teksten en foto's op uw pagina's te wijzigen. Zie hiervoor de demonstratie op de pagina onderhoud."><img src="images/info.gif" width="19" height="17" kosten.php
Hier de php code
<?php
$eerste_paginas = 375;
$volgende_paginas = 25;
if(isset($_POST['paginas']) and is_array($_POST['paginas']))
{
$aantal = count($_POST['paginas']);
}
else
{
$aantal = 0;
}
if ($aantal == 0)
{
$prijs = 0;
}
elseif ($aantal == 1)
{
$prijspaginas = $eerste_paginas;
}
elseif ($aantal >= 2)
{
$prijspaginas = $eerste_paginas + $volgende_paginas * ($aantal -1);
}
echo 'Paginas ' . $aantal . '<br />Prijs ' . $prijspaginas;
?>
<?php
$eerste_fotos = 375;
$volgende_fotos= 25;
if(isset($_POST['fotos']) and is_array($_POST['foto']))
{
$aantal = count($_POST['fotos']);
}
else
{
$aantal = 0;
}
if ($aantal == 0)
{
$prijs = 0;
}
elseif ($aantal == 1)
{
$prijsfotos = $eerste_fotos;
}
elseif ($aantal >= 2)
{
$prijsfotos = $eerste_fotos + $volgende_fotos * ($aantal -1);
}
echo 'Fotos ' . $aantal . '<br />Prijs ' . $prijsfotos;
?>
<?php
$eerste_formulieren = 375;
$volgende_formulieren = 25;
if(isset($_POST['formulieren']) and is_array($_POST['formulieren']))
{
$aantal = count($_POST['formulieren']);
}
else
{
$aantal = 0;
}
if ($aantal == 0)
{
$prijs = 0;
}
elseif ($aantal == 1)
{
$prijspaginas = $eerste_formulieren;
}
elseif ($aantal >= 2)
{
$prijsformulieren = $eerste_formulieren + $volgende_formulieren* ($aantal -1);
}
echo 'Formulieren ' . $aantal . '<br />Prijs ' . $prijsformulieren;
?>
<?php
$eerste_flash = 375;
$volgende_flash = 125;
if(isset($_POST['flash']) and is_array($_POST['flash']))
{
$aantal = count($_POST['flash']);
}
else
{
$aantal = 0;
}
if ($aantal == 0)
{
$prijs = 0;
}
elseif ($aantal == 1)
{
$prijsflash = $eerste_flash;
}
elseif ($aantal >= 2)
{
$prijsflash = $eerste_flash + $volgende_flash * ($aantal -1);
}
echo 'Flash ' . $aantal . '<br />Prijs ' . $prijsflash;
?>
[/]
Nu is het zo dat hij de de prijs altijd op nul zet
wat ik invul er word niks berekend
Wat doe ik fout of wat vergeet ik te doen
Arjan
<table width="700" border="0" align="center" cellpadding="0" cellspacing="0" class="tekst">
<tr>
<td width="24%" height="30">Ontwerp huisstijl </td>
<td width="14%" height="30"><label>
<input name="huisstijl" type="radio" value="1" />
Ja
<input name="huisstijl" type="radio" value="0" checked="checked" />
Nee</label></td>
<td width="6%" height="30"><a href="#" title="Kies voor ja als u nog geen eigen huisstijl heeft of als deze niet digitaal aangeleverd kan worden."><img src="images/info.gif" width="19" height="17" hspace="5" vspace="3" border="0" /></a></td>
<td width="34%" height="30"><div align="right">Aantal pagina's </div></td>
<td width="16%" height="30"><label>
<input name="paginas" type="text" id="paginas" value="0" size="3" />
</label></td>
<td width="6%" height="30"><a href="#" title="Het aantal statische pagina's binnen de site. Hier gelden niet de pagina's uit een database als bijvoorbeeld een artikelbestand."><img src="images/info.gif" width="19" height="17" hspace="5" vspace="3" border="0" /></a></td>
</tr>
<tr>
<td height="30">Nieuwsbrief</td>
<td height="30"><input name="nieuwsbrief" type="radio" value="1" />
Ja
<input name="nieuwsbrief" type="radio" value="0" checked="checked" />
Nee</td>
<td height="30"><a href="#" title="Met een nieuwsbriefsysteem is het mogelijk een door uzelf onderhouden pagina met n klik als mail te versturen naar alle e-mail adresssen in een database"><img src="images/info.gif" width="19" height="17" hspace="5" vspace="3" border="0" /></a></td>
<td height="30"><div align="right">Aantal foto's </div></td>
<td height="30"><label>
<input name="fotos" type="text" id="fotos" value="0" size="3" />
</label></td>
<td height="30"><a href="#" title="Het aantal foto's op uw site. Hier gelden niet de foto's die u zelf plaatst in bijvoorbeeld een catalogus of met een CMS."><img src="images/info.gif" width="19" height="17" hspace="5" vspace="3" border="0" /></a></td>
</tr>
<tr>
<td height="30">CMS-systeem </td>
<td height="30"><input name="cms" type="radio" value="1" />
Ja
<input name="cms" type="radio" value="0" checked="checked" />
Nee</td>
<td height="30"><a href="#" title="Met een CMS-systeem is het mogelijk zelf teksten en foto's op uw pagina's te wijzigen. Zie hiervoor de demonstratie op de pagina onderhoud."><img src="images/info.gif" width="19" height="17" kosten.php
Hier de php code
<?php
$eerste_paginas = 375;
$volgende_paginas = 25;
if(isset($_POST['paginas']) and is_array($_POST['paginas']))
{
$aantal = count($_POST['paginas']);
}
else
{
$aantal = 0;
}
if ($aantal == 0)
{
$prijs = 0;
}
elseif ($aantal == 1)
{
$prijspaginas = $eerste_paginas;
}
elseif ($aantal >= 2)
{
$prijspaginas = $eerste_paginas + $volgende_paginas * ($aantal -1);
}
echo 'Paginas ' . $aantal . '<br />Prijs ' . $prijspaginas;
?>
<?php
$eerste_fotos = 375;
$volgende_fotos= 25;
if(isset($_POST['fotos']) and is_array($_POST['foto']))
{
$aantal = count($_POST['fotos']);
}
else
{
$aantal = 0;
}
if ($aantal == 0)
{
$prijs = 0;
}
elseif ($aantal == 1)
{
$prijsfotos = $eerste_fotos;
}
elseif ($aantal >= 2)
{
$prijsfotos = $eerste_fotos + $volgende_fotos * ($aantal -1);
}
echo 'Fotos ' . $aantal . '<br />Prijs ' . $prijsfotos;
?>
<?php
$eerste_formulieren = 375;
$volgende_formulieren = 25;
if(isset($_POST['formulieren']) and is_array($_POST['formulieren']))
{
$aantal = count($_POST['formulieren']);
}
else
{
$aantal = 0;
}
if ($aantal == 0)
{
$prijs = 0;
}
elseif ($aantal == 1)
{
$prijspaginas = $eerste_formulieren;
}
elseif ($aantal >= 2)
{
$prijsformulieren = $eerste_formulieren + $volgende_formulieren* ($aantal -1);
}
echo 'Formulieren ' . $aantal . '<br />Prijs ' . $prijsformulieren;
?>
<?php
$eerste_flash = 375;
$volgende_flash = 125;
if(isset($_POST['flash']) and is_array($_POST['flash']))
{
$aantal = count($_POST['flash']);
}
else
{
$aantal = 0;
}
if ($aantal == 0)
{
$prijs = 0;
}
elseif ($aantal == 1)
{
$prijsflash = $eerste_flash;
}
elseif ($aantal >= 2)
{
$prijsflash = $eerste_flash + $volgende_flash * ($aantal -1);
}
echo 'Flash ' . $aantal . '<br />Prijs ' . $prijsflash;
?>
[/]
Nu is het zo dat hij de de prijs altijd op nul zet
wat ik invul er word niks berekend
Wat doe ik fout of wat vergeet ik te doen
Arjan
Gewijzigd op 04/08/2010 23:41:31 door arjan jansen
Maak van
<input name="fotos" type="text" id="fotos" value="0" size="3" />
Eens dit
<input name="fotos[]" type="text" value="" size="20" />
<input name="fotos[]" type="text" value="" size="20" />
<input name="fotos[]" type="text" value="" size="20" />
<input name="fotos[]" type="text" value="" size="20" />
En vul ze eens in en post dan het formulier.