ik heb een enquete die uit 3 pagina's bestaat en uit alleen maar multiple choiche vragen (radio buttons)bestaat. Nu wil ik dat als iemand een vraag is vergeten te beantwoorden op pagina 1 dit meteen zichtbaar worden wanneer er op de button 'naar pagina 2' wordt geklikt.
Ik heb al naar diverse voorbeeld scripts gekeken, maar daar zag ik allemaal verschillende methodes en leken niet gericht te zijn op radio buttons.
Ik hoop dat iemand mij hier met een klein voorbeeldje op weg kan helpen.
<br><br>
<p><font face="arial" size="-1">Indien u de behoefte heeft om één of meerdere antwoorden toe te lichten, kan dat hieronder:</font>
<br><textarea name="toelichtingen1" rows="8" cols="75"></textarea>
<br>
<br>
<input type="Reset" name="wissen" value="Wissen">
<input type="Submit" name="Verder naar onderdeel 2" value="Verder naar onderdeel 2">
</form>
</body>
</html>
Wat moet ik waar plaatsen?
Alsvast weer bedankt!
?
Onbekende gebruiker
03-07-2005 17:48
Hallo,
ik heb nu het volgende gemaakt:
<?php
//Als men op de Submit knop heeft gedrukt van het formulier...
if (isset($_POST['Verder naar onderdeel 2'])) {
if (!isset($_POST['vraag1'])) {
$error = "Vraag 1 is niet ingevuld<BR />";
} if (!isset($_POST['vraag2'])) {
$error .= "Vraag2 is niet ingevuld<BR />";
} if (!isset($_POST['vraag3'])) {
$error .= "Vraag is niet ingevuld";
}
if (!isset($error)) { form action="onderdeel2.php" method="post";
} else {
echo "Gelieve alle formuliervelden in te vullen !<BR /><BR />";
echo "<FONT COLOR=\"#FF0000\">".$error."</FONT>";
}
?>
Ik wil dat als er geen vergeten velden zijn, automatisch pagina 2 van de enquete verschijnt. Ik weet echter niet hoe ik dit moet doen: heb nu maar wat staan...
Kan iemand mij hiermee helpen?
<?php
$error = '';
//Als men op de Submit knop heeft gedrukt van het formulier...
if (isset($_POST['Verder naar onderdeel 2'])) {
if (!isset($_POST['vraag1'])) {
$error .= "Vraag 1 is niet ingevuld<BR />";
} if (!isset($_POST['vraag2'])) {
$error .= "Vraag2 is niet ingevuld<BR />";
} if (!isset($_POST['vraag3'])) {
$error .= "Vraag is niet ingevuld";
}
if (empty($error)) { header('Location: onderdeel2.php');
} else {
echo "Gelieve alle formuliervelden in te vullen !<BR /><BR />";
echo "<FONT COLOR=\"#FF0000\">".$error."</FONT>";
}
?>
?
Onbekende gebruiker
03-07-2005 19:15
Hallo Jelmer,
ik krijg dan de volgende foutmelding:
Parse error: parse error, unexpected $
?
Onbekende gebruiker
04-07-2005 10:17
Hallo,
het wil me dus nog steeds niet lukken. Ik heb nu het volgende voorbeeld gevonden:
<html>
<head>
<title>Man of Vrouw - Aan jouw de keuze</title>
</head>
<body>
<p>
<h1>Man of Vrouw, aan jouw de keuze</h1><br>
</p>
<form action="<?php echo $PHP_SELF; ?>" method="post">
Aanspreekvorm <input type="radio" name="titel" value="m"
<?php if (isset ($_POST["titel"]) && $_POST["titel"]=="m") {echo " checked=\"checked\"";}?>> Mijnheer
<input type="radio" name="titel" value="w"
<?php if (isset ($_POST["titel"]) && $_POST["titel"]=="w") {echo " checked=\"checked\"";}?>> Mevrouw
<br><br>
Uw Naam : <input type="text" name="naam" value="<?php if (isset($_POST["naam"])) { echo $_POST["naam"];} ?>" >
<?php
if (isset($_POST["titel"]) && isset($_POST["naam"]) && $_POST["naam"]!="") {
if ($_POST["titel"]=="m") {
echo " Goedendag Mijnheer ";
}
else {
echo "Goedendag Mevrouw ";
}
echo "<strong>" . $_POST["naam"] . "</strong> , leuk dat je er bent !\n<br>";
}
else {
if (isset($_POST["versturen"])) {
echo "Gelieve alle velden in te vullen a.u.b.\n<br>";
}
}
?>
</body>
</html>
Op zich komt dit behoorlijk in de buurt van wat ik wil. Alleen als je hier alle velden hebt ingevuld, blijft hij de huidige pagina weergeven.
Daarom dat ik dat als je <form action="<?php echo $PHP_SELF; ?>" method="post">
vervangt door
<form action="volgendepagina.php" method="post">
dat het wel zou werken.
Maar dan gaat hij meteen naar deze pagina (dus zonder weergave foutmelding) als je op verzenden klikt, ongeacht of je wel of niet alle velden hebt ingevuld.
Het enige wat ik wil, is dat er een foutmelding komt wanneer je op de knop verzenden klikt als je niet alles hebt ingevuld. Als je wel alles hebt ingevuld, moet je deze foutmelding niet krijgen.