Cijfer berekenen, probleempje..
Hallo, ik heb het volgende scriptje geschreven, voor het berekenen van een cijfer:
(alle variabelen kloppen!, er is nog meer code..)
maar, als ik twee vragen heb, en ik heb ze beide goed, dan heb ik een 14.5, terwijl dat een 10.0 zou moeten zijn...
Weet iemand waardoor dit komt, en het met me zou willen helpen oplossen?
Bedankt alvast!!
Lars
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
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
<?php
if($row2['vraag1'] != ""){
$aantal = $aantal+1;
if($vraag1a == $vraag1b){
$goed = $goed+1;
}
}
if($row2['vraag2'] != ""){
$aantal = $aantal+1;
if($vraag2a == $vraag2b){
$goed = $goed+1;
}
}
if($row2['vraag3'] != ""){
$aantal = $aantal+1;
if($vraag3a == $vraag3b){
$goed = $goed+1;
}
}
if($row2['vraag4'] != ""){
$aantal = $aantal+1;
if($vraag4a == $vraag4b){
$goed = $goed+1;
}
}
if($row2['vraag5'] != ""){
$aantal = $aantal+1;
if($vraag5a == $vraag5b){
$goed = $goed+1;
}
}
if($row2['vraag6'] != ""){
$aantal = $aantal+1;
if($vraag6a == $vraag61b){
$goed = $goed+1;
}
}
if($row2['vraag7'] != ""){
$aantal = $aantal+1;
if($vraag7a == $vraag7b){
$goed = $goed+1;
}
}
if($row2['vraag8'] != ""){
$aantal = $aantal+1;
if($vraag8a == $vraag8b){
$goed = $goed+1;
}
}
if($row2['vraag9'] != ""){
$aantal = $aantal+1;
if($vraag9a == $vraag9b){
$goed = $goed+1;
}
}
if($row2['vraag10'] != ""){
$aantal = $aantal+1;
if($vraag10a == $vraag10b){
$goed = $goed+1;
}
}
if($row2['vraag11'] != ""){
$aantal = $aantal+1;
if($vraag11a == $vraag11b){
$goed = $goed+1;
}
}
if($row2['vraag12'] != ""){
$aantal = $aantal+1;
if($vraag12a == $vraag12b){
$goed = $goed+1;
}
}
if($row2['vraag13'] != ""){
$aantal = $aantal+1;
if($vraag13a == $vraag13b){
$goed = $goed+1;
}
}
if($row2['vraag14'] != ""){
$aantal = $aantal+1;
if($vraag14a == $vraag14b){
$goed = $goed+1;
}
}
if($row2['vraag15'] != ""){
$aantal = $aantal+1;
if($vraag15a == $vraag15b){
$goed = $goed+1;
}
}
if($row2['vraag16'] != ""){
$aantal = $aantal+1;
if($vraag16a == $vraag16b){
$goed = $goed+1;
}
}
if($row2['vraag17'] != ""){
$aantal = $aantal+1;
if($vraag17a == $vraag17b){
$goed = $goed+1;
}
}
if($row2['vraag18'] != ""){
$aantal = $aantal+1;
if($vraag18a == $vraag18b){
$goed = $goed+1;
}
}
if($row2['vraag19'] != ""){
$aantal = $aantal+1;
if($vraag19a == $vraag19b){
$goed = $goed+1;
}
}
if($row2['vraag20'] != ""){
$aantal = $aantal+1;
if($vraag20a == $vraag20b){
$goed = $goed+1;
}
}
$goed = $goed+1;
$cijfer = $goed/$aantal*9+1;
$cijfer1 = number_format($cijfer, 1, '.', '');
?>
if($row2['vraag1'] != ""){
$aantal = $aantal+1;
if($vraag1a == $vraag1b){
$goed = $goed+1;
}
}
if($row2['vraag2'] != ""){
$aantal = $aantal+1;
if($vraag2a == $vraag2b){
$goed = $goed+1;
}
}
if($row2['vraag3'] != ""){
$aantal = $aantal+1;
if($vraag3a == $vraag3b){
$goed = $goed+1;
}
}
if($row2['vraag4'] != ""){
$aantal = $aantal+1;
if($vraag4a == $vraag4b){
$goed = $goed+1;
}
}
if($row2['vraag5'] != ""){
$aantal = $aantal+1;
if($vraag5a == $vraag5b){
$goed = $goed+1;
}
}
if($row2['vraag6'] != ""){
$aantal = $aantal+1;
if($vraag6a == $vraag61b){
$goed = $goed+1;
}
}
if($row2['vraag7'] != ""){
$aantal = $aantal+1;
if($vraag7a == $vraag7b){
$goed = $goed+1;
}
}
if($row2['vraag8'] != ""){
$aantal = $aantal+1;
if($vraag8a == $vraag8b){
$goed = $goed+1;
}
}
if($row2['vraag9'] != ""){
$aantal = $aantal+1;
if($vraag9a == $vraag9b){
$goed = $goed+1;
}
}
if($row2['vraag10'] != ""){
$aantal = $aantal+1;
if($vraag10a == $vraag10b){
$goed = $goed+1;
}
}
if($row2['vraag11'] != ""){
$aantal = $aantal+1;
if($vraag11a == $vraag11b){
$goed = $goed+1;
}
}
if($row2['vraag12'] != ""){
$aantal = $aantal+1;
if($vraag12a == $vraag12b){
$goed = $goed+1;
}
}
if($row2['vraag13'] != ""){
$aantal = $aantal+1;
if($vraag13a == $vraag13b){
$goed = $goed+1;
}
}
if($row2['vraag14'] != ""){
$aantal = $aantal+1;
if($vraag14a == $vraag14b){
$goed = $goed+1;
}
}
if($row2['vraag15'] != ""){
$aantal = $aantal+1;
if($vraag15a == $vraag15b){
$goed = $goed+1;
}
}
if($row2['vraag16'] != ""){
$aantal = $aantal+1;
if($vraag16a == $vraag16b){
$goed = $goed+1;
}
}
if($row2['vraag17'] != ""){
$aantal = $aantal+1;
if($vraag17a == $vraag17b){
$goed = $goed+1;
}
}
if($row2['vraag18'] != ""){
$aantal = $aantal+1;
if($vraag18a == $vraag18b){
$goed = $goed+1;
}
}
if($row2['vraag19'] != ""){
$aantal = $aantal+1;
if($vraag19a == $vraag19b){
$goed = $goed+1;
}
}
if($row2['vraag20'] != ""){
$aantal = $aantal+1;
if($vraag20a == $vraag20b){
$goed = $goed+1;
}
}
$goed = $goed+1;
$cijfer = $goed/$aantal*9+1;
$cijfer1 = number_format($cijfer, 1, '.', '');
?>
(alle variabelen kloppen!, er is nog meer code..)
maar, als ik twee vragen heb, en ik heb ze beide goed, dan heb ik een 14.5, terwijl dat een 10.0 zou moeten zijn...
Weet iemand waardoor dit komt, en het met me zou willen helpen oplossen?
Bedankt alvast!!
Lars
Regel 122 moet weg.
Regel 123 moet dit zijn.
$cijfer = $goed/$aantal*10;
Regel 123 moet dit zijn.
$cijfer = $goed/$aantal*10;
Je code kan korter:
Wel even kijken of de syntaxis van ${'vraag'.$i.'a'} klopt...
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
<?php
for($i=1;$i<=20;$i++) {
if(isset($row2['vraag'.$i])) {
$aantal += 1;
if(${'vraag'.$i.'a'} == ${'vraag'.$i.'b'}) {
$goed += 1;
}
}
}
$cijfer = $goed/$aantal*10;
$cijfer = number_format($cijfer, 1, '.', '');
?>
for($i=1;$i<=20;$i++) {
if(isset($row2['vraag'.$i])) {
$aantal += 1;
if(${'vraag'.$i.'a'} == ${'vraag'.$i.'b'}) {
$goed += 1;
}
}
}
$cijfer = $goed/$aantal*10;
$cijfer = number_format($cijfer, 1, '.', '');
?>
Wel even kijken of de syntaxis van ${'vraag'.$i.'a'} klopt...
Gewijzigd op 01/01/1970 01:00:00 door Jesper Diovo
Maar, als ik nu 2 vragen heb, waarvan 0 goed, dan heb ik een 0.0, en als ik ze beide goed heb, dan heb ik een 10.0....
Als je ze fout hebt, moet het een 1 zijn...
Als je ze fout hebt, moet het een 1 zijn...
Dan zet je nog even op regel tien:
$goed = $goed+1;
$goed = $goed+1;
@ Karl, als je ze beide goed hebt word het een elf???
@SanThe, dit werkt!, dankje!!
@SanThe, dit werkt!, dankje!!




