Hoi, ik zit met een probleem
ik heb een form en deze kan data laten versturen (duh
) maar wanneer iemand deze form heeft beantwoord en gesubmit worden de antwoorden in de db gezet, wanneer iemand terug komt op 'die' pagina worden alle antwoorden van deze pagina terug gezet in de pagina... nu zit ik met een probleem met het submitten en verwerken van deze data.
dit is de 1e 'form'
wanneer ik deze invul krijg ik deze output
Antwoorden van me query (voor testen)
en als $_POST results
als ik deze weer inlees zie ik dat de volgende dingen fout zijn gegaan.
1. de 'round' buttons waarvan er maar 1 geselecteerd kan zijn is niet verwerkt :"(
2. wanneer ik deze gegevens weer laad mis ik steeds 1 van de 'pulldown' geselecteerde items..
code na submitten pagina
het 'complete' stukje source dat ik hiervoor heb gebruikt (zelf gemaakt is)
ik hoop dat er iemand is die me wil helpen, indien je hier niets aan hebt en de gehele source graag wilt zien zal ik dat persoonlijk overwegen, niet iedereen is natuurlijk te vertrouwen
Alvast zeer bedankt.
dit is echter geen one day problem... tis maar ff dat jullie het weten!
ik heb een form en deze kan data laten versturen (duh
dit is de 1e 'form'
code:
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
| <select name="qid[1][]" size="1"> <option value="0">- Select -</option> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> <option value="6">6</option> <option value="7">7</option> <option value="8">8</option> <option value="open">Other</option> </select> <br>Open answer: <input type="text" size="20" name="qid[1][opentext]" value=""> <br> <input type="checkbox" name="qid[2][0]" value="10"> <strong>1</strong> <input type="checkbox" name="qid[2][1]" value="11"> <strong>2</strong> <input type="checkbox" name="qid[2][2]" value="12"> <strong>3</strong> <input type="checkbox" name="qid[2][3]" value="13"> <strong>4</strong> <input type="checkbox" name="qid[2][4]" value="14"> <strong>5</strong> <input type="checkbox" name="qid[2][5]" value="15"> <strong>6</strong> <input type="checkbox" name="qid[2][6]" value="16"> <strong>7</strong> <input type="checkbox" name="qid[2][7]" value="17"> <strong>8</strong> <input type="checkbox" name="qid[2][open]" value="open"> <strong>Other</strong> <br>Open answer: <input type="text" size="20" name="qid[2][opentext]" value=""> <br> <input type="radio" name="qid[3]" value="18"> <strong>1</strong> <input type="radio" name="qid[3]" value="19"> <strong>2</strong> <input type="radio" name="qid[3]" value="20"> <strong>3</strong> <input type="radio" name="qid[3]" value="21"> <strong>4</strong> <input type="radio" name="qid[3]" value="22"> <strong>5</strong> <input type="radio" name="qid[3]" value="23"> <strong>6</strong> <input type="radio" name="qid[3]" value="24"> <strong>7</strong> <input type="radio" name="qid[3]" value="25"> <strong>8</strong> <br> <select multiple name="qid[4][]" size="4"> <option value="26">this</option> <option value="27">is</option> <option value="28">one</option> <option value="29">of</option> <option value="30">my</option> <option value="31">options</option> <option value="open">Other</option> </select> <br>Open answer: <input type="text" size="20" name="qid[4][opentext]" value=""> |
wanneer ik deze invul krijg ik deze output
Antwoorden van me query (voor testen)
code:
1
2
3
4
5
6
7
8
9
| 1 Question: 1 --> Openanswer : anders 2 Question: 2 --> Answer : 17 1 Question: 2 --> Openanswer : open 2 1 Question: 4 --> Openanswer : also another 2 Question: 4 --> Answer : 27 2 Question: 4 --> Answer : 28 2 Question: 4 --> Answer : 29 2 Question: 4 --> Answer : 30 2 Question: 4 --> Answer : 31 |
en als $_POST results
code:
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
| array(4) { [1]=> array(2) { [0]=> string(4) "open" ["opentext"]=> string(6) "anders" } [2]=> array(3) { [7]=> string(2) "17" ["open"]=> string(4) "open" ["opentext"]=> string(6) "open 2" } [3]=> string(2) "25" [4]=> array(8) { [0]=> string(2) "26" [1]=> string(2) "27" [2]=> string(2) "28" [3]=> string(2) "29" [4]=> string(2) "30" [5]=> string(2) "31" [6]=> string(4) "open" ["opentext"]=> string(12) "also another" } } |
als ik deze weer inlees zie ik dat de volgende dingen fout zijn gegaan.
1. de 'round' buttons waarvan er maar 1 geselecteerd kan zijn is niet verwerkt :"(
2. wanneer ik deze gegevens weer laad mis ik steeds 1 van de 'pulldown' geselecteerde items..
code na submitten pagina
code:
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
| <select name="qid[1][]" size="1"> <option value="0">- Select -</option> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> <option value="6">6</option> <option value="7">7</option> <option value="8">8</option> <option value="open" selected>Other</option> </select> <br>Open answer: <input type="text" size="20" name="qid[1][opentext]" value="anders"> <br> <input type="checkbox" name="qid[2][0]" value="10"> <strong>1</strong> <input type="checkbox" name="qid[2][1]" value="11"> <strong>2</strong> <input type="checkbox" name="qid[2][2]" value="12"> <strong>3</strong> <input type="checkbox" name="qid[2][3]" value="13"> <strong>4</strong> <input type="checkbox" name="qid[2][4]" value="14"> <strong>5</strong> <input type="checkbox" name="qid[2][5]" value="15"> <strong>6</strong> <input type="checkbox" name="qid[2][6]" value="16"> <strong>7</strong> <input type="checkbox" name="qid[2][7]" value="17" checked> <strong>8</strong> <input type="checkbox" name="qid[2][open]" value="open" checked> <strong>Other</strong> <br>Open answer: <input type="text" size="20" name="qid[2][opentext]" value="open 2"> <br> <input type="radio" name="qid[3]" value="18"> <strong>1</strong> <input type="radio" name="qid[3]" value="19"> <strong>2</strong> <input type="radio" name="qid[3]" value="20"> <strong>3</strong> <input type="radio" name="qid[3]" value="21"> <strong>4</strong> <input type="radio" name="qid[3]" value="22"> <strong>5</strong> <input type="radio" name="qid[3]" value="23"> <strong>6</strong> <input type="radio" name="qid[3]" value="24"> <strong>7</strong> <input type="radio" name="qid[3]" value="25"> <strong>8</strong> <br> <select multiple name="qid[4][]" size="4"> <option value="26">this</option> <option value="27" selected>is</option> <option value="28" selected>one</option> <option value="29" selected>of</option> <option value="30" selected>my</option> <option value="31" selected>options</option> <option value="open" selected>Other</option> </select> <br>Open answer: <input type="text" size="20" name="qid[4][opentext]" value="also another"> |
het 'complete' stukje source dat ik hiervoor heb gebruikt (zelf gemaakt is)
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
| if ($_SERVER["REQUEST_METHOD"] == "POST") { foreach ($_POST['qid'] as $key => $value) { clearAnswers($key); // remove eerder gezette antwoorden :) if (count($_POST['qid'][$key]) >1) { foreach($_POST['qid'][$key] as $secKey => $secValue) { if ($secKey == "open") { // insert open anwer into database $questionid = $key; $questionopenanswer = $_POST['qid'][$key]['opentext']; saveOpenAnswer($_GET['id'], $questionid, addslashes(htmlspecialchars($questionopenanswer))); echo "1 Question: $questionid --> Openanswer : $questionopenanswer <br>"; }elseif ($secKey != "opentext" && $secValue != "open") { // insert normal antwoord in database $questionid = $key; $questionanswer = $secValue; saveAnswer($_GET['id'], $questionid, $questionanswer); echo "2 Question: $questionid --> Answer : $questionanswer <br>"; } } }else{ if ($key == "open") { // insert open anwer into database $questionid = $key; $questionopenanswer = $_POST['qid'][$key]['opentext']; echo "3 Question: $questionid --> Openanswer : $questionopenanswer <br>"; }else{ // insert normal antwoord in database $questionid = $key; $questionopenanswer = $secValue; echo "4 Question: $questionid --> Answer : $questionopenanswer <br>"; } } } echo '<pre>'; // laat die $_POST zien ;) var_dump($_POST['qid']); echo '</pre>'; } |
ik hoop dat er iemand is die me wil helpen, indien je hier niets aan hebt en de gehele source graag wilt zien zal ik dat persoonlijk overwegen, niet iedereen is natuurlijk te vertrouwen
Alvast zeer bedankt.
dit is echter geen one day problem... tis maar ff dat jullie het weten!