Enquete in PHP
ik ben bezig een enquete te maken in een html-file.
De vragen etc zijn allemaal klaar. Alleen heb ik een klein probleem.
De enquete bestaat in totaal uit 50 vragen, maar niet iedereen hoeft alle vragen te beantwoorden.
Verder bestaat deze enquete uit vijf aparte pagina's.
Is het nu mogelijk om aan de hand van een selectievraag die je in het begin stelt, dmv een php-script, naar de voor die persoon relevante pagina's te gaan en de rest over te slaan? Indien ja, hoe?
K ben een echte beginner met PHP, dus graag een duidelijke uitleg of voorbeeld script.
De vragen worden verstuurd via een formmail script (antwoorden komen per email binnen).
Graag een reactie.
Bvd.
Hans.
Gewijzigd op 04/10/2005 18:11:00 door Hans Versteegen
Maak gewoon een formuliertje, wanneer iemand de vraag beantwoord stuur je hem door naar de pagina die relevant is voor die persoon. Daarna zorg je dat die pagina linkt naar de volgende pagina die relevant is voor die persoon.
Ik heb één pagina in het begin die iedereen in moet vullen.
Daarna heb ik drie pagina's die dus afhankelijk zijn van een vraag op die eerste pagina.
Hoe moet ik die link dan neer zetten?
Hoet moet dus zo zijn dat bijv bij antwoord a er naar de derde pagina wordt gegaan, en bij antwoord c naar de tweede. En dan dus de rest neit bezoekt.
Hoe en waar meot ik die link er dan inzetten?
Bvd voor de reactie.
Niek:
Dit hoeft niet in php lijkt me...
Maak gewoon een formuliertje, wanneer iemand de vraag beantwoord stuur je hem door naar de pagina die relevant is voor die persoon. Daarna zorg je dat die pagina linkt naar de volgende pagina die relevant is voor die persoon.
Maak gewoon een formuliertje, wanneer iemand de vraag beantwoord stuur je hem door naar de pagina die relevant is voor die persoon. Daarna zorg je dat die pagina linkt naar de volgende pagina die relevant is voor die persoon.
Pagina 1
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
// Inleiding enzo
// Open formulier, verzenden via POST (method="post")
// en verzenden naar pagina2.php
// Vraag X
echo "<h1>Vraag X</h1>\n";
echo "<p>Wat is uw geslacht?<br>\n";
echo "<select name=\"vraag_x\">\n";
echo " <option value=\"0\">Dat zeg ik liever niet</option>\n";
echo " <option value=\"1\">Menneke</option>\n";
echo " <option value=\"2\">Vrouwtje</option>\n";
echo "</select></p>\n"
// Sluit formuliertje
?>
// Inleiding enzo
// Open formulier, verzenden via POST (method="post")
// en verzenden naar pagina2.php
// Vraag X
echo "<h1>Vraag X</h1>\n";
echo "<p>Wat is uw geslacht?<br>\n";
echo "<select name=\"vraag_x\">\n";
echo " <option value=\"0\">Dat zeg ik liever niet</option>\n";
echo " <option value=\"1\">Menneke</option>\n";
echo " <option value=\"2\">Vrouwtje</option>\n";
echo "</select></p>\n"
// Sluit formuliertje
?>
Pagina 2
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
// Wat je allemaal nog meer wilt doen, dan het verwerken van het formulier
if($_POST['vraag_x']) == 0) { // niet beantwoord
// Vragenset A
} else if ($_POST['vraag_x'] == 1) { // Menneke
// Vragenset B
} else if ($_POST['vraag_x'] == 2) { // Vrouwtje
// Vragenset C
} else {
// Tsjah.. de vraag is niet beantwoord...
}
?>
// Wat je allemaal nog meer wilt doen, dan het verwerken van het formulier
if($_POST['vraag_x']) == 0) { // niet beantwoord
// Vragenset A
} else if ($_POST['vraag_x'] == 1) { // Menneke
// Vragenset B
} else if ($_POST['vraag_x'] == 2) { // Vrouwtje
// Vragenset C
} else {
// Tsjah.. de vraag is niet beantwoord...
}
?>
Elwin
[Edit: probje met een back-slash]
Gewijzigd op 03/10/2005 10:13:00 door Elwin - Fratsloos
Dan hebbie *ip*.txt en dan alles daarin laten schrijven, bijv elke regel: *vraag*|*antwoord* dus krijg je 29|Geen mening en bij het versturen van de mail alles uitlezen en mailen..
Overigens zou ik wel alles in 1 bestand zetten, met $_GET[] ofzow.. Anders krijg je 50 bestanden..:)
Aangezien ik niet bepaald (beter bepaald niet) handig ben met PHP hoop ik dat jullie me verder willen helpen. Ik heb geprobeerd het php script zoals hierboven staat in mn html te plakken, maar kreeg het helaas niet werkend.
Ik heb hier het form script wat in mn html pagina staat geplakt. (onbelangrijke info heb ik gewist) Wellicht dat jullie aan kunnen geven wat ik waar in moet plakken.
En aan de hand van de vraag die bovenaan staat moet ik dus verder linken naar auto.html / fiets.html etc.
<form method="post" enctype="multipart/form-data" action="formmail.php">
<input type="hidden" name="MAX_FILE_SIZE" value="1000000">
<input type="hidden" name="path_to_file" value="/www/uploaded/files">
<input type="hidden" name="require" value="geg1,geg2_geg3">
<input type="hidden" name="recipient" value="[email protected]">
<input type="hidden" name="sort" value="alphabetic">
<input type="hidden" name="ar_file" value="/www/formmail_path/autoresponder.txt">
<input type="hidden" name="ar_subject" value="Reactie.">
<input type="hidden" name="env_report" value="REMOTE_HOST,HTTP_USER_AGENT">
<table width="700" border="0" cellspacing="3">
<tr>
<td><span class="style13"><strong> Naam* </strong></span>
<td><input name="geg1" size="50"> </br> </td></tr>
<tr>
<td><span class="style13"><strong> Postcode en huisnummer: * </strong></span>
<td><input name="geg2_geg3" size="50"> </br> </td></tr>
<tr><td><span class="style13"><strong> Telefoonnummer: </strong></span>
<td><input name="geg4" size="50"> </br> </td></tr>
<tr><td><span class="style13"><strong> Email contactpersoon: </strong></span>
<td><input name="geg5" size="50"> </br> </td></tr>
</table>
<table width="725" border="0" cellspacing="12">
<tr>
<td colspan="2"><span class="style9"><strong>1. Welke vervoersmiddelen gebruikt u?</strong><br>
<input type="checkbox" name="alg1" value="1">
auto.<br>
<input type="checkbox" name="alg1" value="2">
Fiets. <br>
<input type="checkbox" name="alg1" value="3">
Openbaar vervoer<br>
<input type="checkbox" name="alg1" value="4">
Overige
</span></td>
</tr>
<tr>
<td colspan="2"><input type="submit" value="Naar de volgende pagina">
</tr>
</table>
</form>
Graag weer een reactie.
BVD.
Gewijzigd op 03/10/2005 15:03:00 door Hans Versteegen
Graag een reactie.
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
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
<?php
// variabelen definieren
$geg1 = $_POST["geg1"];
$geg2_3 = $_POST["geg2_geg3"];
$geg4 = $_POST["geg4"];
$geg5 = $_POST["geg5"];
$alg1 = $_POST["alg1"];
$alg2 = $_POST["alg2"];
$alg3 = $_POST["alg3"];
$alg4 = $_POST["alg4"];
// mailfunctie maken
mail ("e-mailadres", "onderwerp", "
// Inhoud van de mail bijvoorbeeld:
Naam: $geg1
Postcode en huisnummer: $geg2_3");
// Zorgen dat u naar het juiste formulier gestuurd wordt
if(isset($alg1)){ header("Location: form_auto.php");
exit();
if(isset($alg2)){ header("Location: form_fiets.php");
exit();
if(isset($alg3)){ header("Location: form_ov.php");
exit();
if(isset($alg4)){ header("Location: form_overige.php");
exit();
?>
// variabelen definieren
$geg1 = $_POST["geg1"];
$geg2_3 = $_POST["geg2_geg3"];
$geg4 = $_POST["geg4"];
$geg5 = $_POST["geg5"];
$alg1 = $_POST["alg1"];
$alg2 = $_POST["alg2"];
$alg3 = $_POST["alg3"];
$alg4 = $_POST["alg4"];
// mailfunctie maken
mail ("e-mailadres", "onderwerp", "
// Inhoud van de mail bijvoorbeeld:
Naam: $geg1
Postcode en huisnummer: $geg2_3");
// Zorgen dat u naar het juiste formulier gestuurd wordt
if(isset($alg1)){ header("Location: form_auto.php");
exit();
if(isset($alg2)){ header("Location: form_fiets.php");
exit();
if(isset($alg3)){ header("Location: form_ov.php");
exit();
if(isset($alg4)){ header("Location: form_overige.php");
exit();
?>
Ik denk dat het zo moet lukken...
if(isset($alg1)){ header("Location: form_auto.php");
}else if(isset($alg2)){ header("Location: form_fiets.php");
}else if(isset($alg3)){ header("Location: form_ov.php"); }else{ header("Location: form_overige.php"); }
Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,Ik snap het niet, ik snap het niet, ik snap het niet, ik snap het niet,
And you never will!