Form oefeningen

We hebben net goed geoefend en nu wil ik dat je zelf een form gaat maken. Opgaven:
Opdracht 1: Je moet een contactformpje maken met velden waar je je naam(textveld), leeftijd(dropdown), e-mailadres(textveld), en bricht(textarea) moet kunnen invullen. Alle velden behalve e-mail zijn verplicht. Maak de code zo overzichtelijk mogelijk. Het moet inclusief superglobals zijn. En gebruik de POST methode.

Opdracht 2: Maak een hetzelfde formpje, alleen dan met verzendbevestiging(gebruikt hidden fields). Superglobals ingeschakelt.

Opdracht 3: Doe opdracht 1 over, alleen moet alles in één pagina komen.

Opdracht 4: Doe opdracht 2 over, alleen moet alles in één pagina komen.

*

*

*

*

*

*

*

*

*

Antwoorden:
OPDRACHT 1: |||een.php|||

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<form action='twee.php' method='post'>
Je naam: <input type='text' name='naam'> <br>
Je leeftijd: <select name='leeftijd' height='1'>
<option value='m1'><1</option>
<option value='t2_4'>2 - 4</option>
<option value='t4_6'>4 -6</option>(...op deze manier verder...)
</select><br>
Je e-mail: <input type='text' name='mail'> <br>
Je bericht:<textarea name='message' cols='50' rows='5'><br>
<input type='submit' name='submit' value='Verzend'>
</form>

|||twee.php|||
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
if($_POST['submit']) {
if($_POST['naam'] || $_POST['message'] == "") {
echo "Je hebt een van de velden <b>niet</b> gevult.";
exit();
}

mail("[email protected]", "Nieuw bericht", "Hallo! \n Er is een nieuw bericht van ".$_POST['naam']." met het e-mail adres ".$_POST['mail']." \n Dit is zijn bericht: \n ".$_POST['message']." \n \n Groeten, Automailer. \n P.S. Zijn leeftijd is ".$_POST['leeftijd']."\n");
}
else {
echo "Vul een formulier in!";
exit();
}

?>


OPDRACHT 2: |||een.php|||
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<form action='twee.php' method='post'>
Je naam: <input type='text' name='naam'>
<br> Je leeftijd:
<select name='leeftijd' height='1'>
<option value='m1'><1</option>
<option value='t2_4'>2 - 4</option>
<option value='t4_6'>4 -6</option>(...op deze manier verder...)
</select><br>
Je e-mail: <input type='text' name='mail'> <br>
Je bericht:<textarea name='message' cols='50' rows='5'><br>
<input type='submit' name='submit' value='Verzend'>
</form>

|||twee.php|||
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?php
if($_POST['submit']) {
if($_POST['naam'] || $_POST['message'] == "") {
echo "Je hebt een van de velden <b>niet</b> gevult.";
exit();
}

print "<form action='drie.php' method='post'><input type='hidden' name='naam' value='".$_POST['naam']."'><input type='hidden' name='leeftijd' value='".$_POST['leeftijd']."'><input type='hidden' name='mail' value='".$_POST['mail']."'><input type='hidden' name='bericht' value='".$_POST['message']."'>Weet je zeker dat je door wilt gaan met de naam '".$_POST['naam']."', de e-mail-adres '".$_POST['mail']."' en het bericht '".$POST['message']."'??? <br><input type='button' name='terug' onclick='javascript:history.go(-1);' value='Nee'><input type='submit' name='submit' value='Ja'></form>";
}
else {
die("Vul een form in");
}

?>

|||drie.php|||
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?
if($_POST['submit']) {
mail("[email protected]", "Nieuw bericht", "Hallo! \n Er is een nieuw bericht van ".$_POST['naam']." met het e-mail adres ".$_POST['mail']." \n Dit is zijn bericht: \n ".$_POST['message']." \n \n Groeten, Automailer. \n P.S. Zijn leeftijd is ".$_POST['leeftijd']."\n");
}
else {
echo "Vul een formulier in!";
exit();
}

?>


de rest is under construction.

« Lees de omschrijving en reacties

Inhoudsopgave

  1. Forms maken
  2. Forms verwerken
  3. Form oefeningen

PHP tutorial opties

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.