if (isset($_POST['eens'])) werkt niet
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
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
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
if (isset($_POST['eens']))
{
$_SESSION['antwoorden'][$_SESSION['aantal']] = 'eens';
}
if (isset($_POST['oneens']))
{
$_SESSION['antwoorden'][$_SESSION['aantal']] = 'oneens';
}
?>
<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>Naamloos document</title>
</head>
<form method="post" action="">
<body>
<table>
<tr>
<td width="250px" align="left"><input type='image' name='eens' value='eens' src='Images/Eens.png'></td>
<td width="250px" align="right"><input type='image' name='oneens' value='oneens' src='Images/Oneens.png'></td>
</tr>
</table>
</body>
</form><
</html>
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
if (isset($_POST['eens']))
{
$_SESSION['antwoorden'][$_SESSION['aantal']] = 'eens';
}
if (isset($_POST['oneens']))
{
$_SESSION['antwoorden'][$_SESSION['aantal']] = 'oneens';
}
?>
<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>Naamloos document</title>
</head>
<form method="post" action="">
<body>
<table>
<tr>
<td width="250px" align="left"><input type='image' name='eens' value='eens' src='Images/Eens.png'></td>
<td width="250px" align="right"><input type='image' name='oneens' value='oneens' src='Images/Oneens.png'></td>
</tr>
</table>
</body>
</form><
</html>
Edit:
Ik heb code-tags geplaatst. Gelieve dit in het vervolg zelf toe te voegen aan je bericht.
Zie ook: Veel gestelde vragen: Welke UBB-codes kan ik gebruiken.
Zie ook: Veel gestelde vragen: Welke UBB-codes kan ik gebruiken.
Alvast bedankt, Lisette
Gewijzigd op 11/12/2017 17:02:31 door - Ariën -
Je form is in ieder geval niet valide, mogelijk verklaart dat het al. Je form moet in zijn geheel binnen je body liggen.
Bedankt voor je reactie Ben. Dat was inderdaad een stomme fout, maar het probleem is daarmee, helaas, niet opgelost.
Verder plaats je alleen maar een sessie, en haal je niks op in je formulier.
Gewijzigd op 11/12/2017 17:04:11 door - Ariën -
En om te controleren of e.e.a. goed aankomt kan je ook een echo $_POST['eens'] kunnen invoegen.
Als ik jou was zou ik je $_POST eens dumpen, ik vermoed dat de input type image wordt omgezet naar, eens_x & eens_y, je moet controleren of die isset zijn ipv $_POST['eens'].
Gerhard l op 11/12/2017 17:19:21:
Als ik jou was zou ik je $_POST eens dumpen, ik vermoed dat de input type image wordt omgezet naar, eens_x & eens_y, je moet controleren of die isset zijn ipv $_POST['eens'].
Dit is het inderdaad! Ik heb nu: if (isset($_POST['eens_x'])) en dit werkt.
Super bedankt!
EDIT: gotcha: als iemand naar de image tabt en op enter drukt krijg je nog steeds de oorspronkelijke naam geloof ik, dus dan werkt je controle op _x ook niet meer. Ik zou dus gaan voor een oplossing die altijd werkt (button).
Gewijzigd op 12/12/2017 00:23:35 door Thomas van den Heuvel
Toevoeging op 12/12/2017 00:36:22:
Gebruik dan liever een stukje javascript en zet een click event op de image waarop je formulier ge-submit wordt
Je hebt niet eens JavaScript nodig. Dit kan met HTML CSS, ofwel via <button type="submit" name="eens"><img src ..></button> of desnoods met een class voor de afbeelding en wat tekst tussen de tags.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
<form method="post">
<div style="display:none">
<input name="mening" id="eens" type="radio" value="eens">
<input name="mening" id="oneens" type="radio" value="oneens">
</div>
<label for="eens">
<img alt="Eens" src="ThumbUp.png">
</label>
<label for="oneens">
<img alt="Oneens" src="ThumbDown.png">
</label>
</form>
<div style="display:none">
<input name="mening" id="eens" type="radio" value="eens">
<input name="mening" id="oneens" type="radio" value="oneens">
</div>
<label for="eens">
<img alt="Eens" src="ThumbUp.png">
</label>
<label for="oneens">
<img alt="Oneens" src="ThumbDown.png">
</label>
</form>
Het kan zelfs met alleen CSS: Use images instead of radio buttons