Forms verwerken
Op deze pagina gaan we forms verwerken. Om te beginnen een simpel formpje:
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
<? if($submit) { // als het formulier verzonden is doen we dit:
if($naam ="") { // checken of veld "naam" wel is ingevult
die("Je moet een naam invullen!");
}
// veld "naam" is ingevult, we gaan de resultaten laten zien:
echo "Ooooow, ik wist niet dat je '".$naam."' heette!";
} else { // het formulier is schijnbaar niet verzonden
?><!-- print het formpje: ---> <form action='<?=$php_self?>' method='post'>Je naam: <input type='text' name='naam'><input type='submit' name='submit' value='Verzend!'></form><!-- formpje geprint :D --> <? } //even de } dichtmaken, anders krijgen we fouten
?>
if($naam ="") { // checken of veld "naam" wel is ingevult
die("Je moet een naam invullen!");
}
// veld "naam" is ingevult, we gaan de resultaten laten zien:
echo "Ooooow, ik wist niet dat je '".$naam."' heette!";
} else { // het formulier is schijnbaar niet verzonden
?><!-- print het formpje: ---> <form action='<?=$php_self?>' method='post'>Je naam: <input type='text' name='naam'><input type='submit' name='submit' value='Verzend!'></form><!-- formpje geprint :D --> <? } //even de } dichtmaken, anders krijgen we fouten
?>
$php_self ken je niet, hè? Nou, de variable php_self is gelijk aan de huidige pagina. Dus als je bijvoorbeeld doet, dan print hij de naam van de huidige pagina, bijvoorbeeld jos.php of kat.php.
Omdat het formulier gepost word, kunnen we beter een superglobal gebruiken. Dat is veiliger, én beter! Daarvoor moet je in je php.ini bestand wel de optie "register_globals" aan hebben staat!
Voor de get methode gebruiken we de register_global "$_GET" en voor de post methode gebruiken we de register_global "$_POST". Deze mag je nooit direct aanspreken, anders krijg je errors. Dus nooit coden!!!
Voortaan gaan we in deze tutorial met de register_global variablen werkenb die zo in elkaar zitten: "$_GET['formobject_naam']" of "$_POST['formobject_naam']".
Goed, nu gaan we een gemiddelt formpje maken:
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
<?
if(!$verzenden) { //als het formpje NIET verzonden is:
// printen we het formpje uit:
print "<form method='post' action='".$php_self."'>Voornaam: <input type='text' name='voornaam'><br> Je username: <input type='text' name='username'><br> Je passwoord: <input type='password' name='passwoord'><br> Hoe voel jij je: <select name='areyougood'><option value='super'>Super!</option><option value='matig'>Matig</option><option value='slecht'>Slecht</option></select><br><input type='submit' name='verzenden' value='Verwerk!'></form>";
} else { //als het formulier wèl verzonden is
if ($_POST['voornaam'] || $_POST['username'] || $_POST['passwoord'] == "") { // controleren we de boel
die("Je hebt een van de elementen van het formulier niet ingevult!");
}
// print de resultaten:
print "Je ingevoerde gegevens:<br>";
print "Jij heet '".$_POST['voornaam']."' en je username is '"$_POST['username']."' en je passwoord is '".$_POST['passwoord']."'";
print "<br>Hoe voel jij je? Je voelt je ".$_POST['areyougood'];
} // sluit het {} af ?>
if(!$verzenden) { //als het formpje NIET verzonden is:
// printen we het formpje uit:
print "<form method='post' action='".$php_self."'>Voornaam: <input type='text' name='voornaam'><br> Je username: <input type='text' name='username'><br> Je passwoord: <input type='password' name='passwoord'><br> Hoe voel jij je: <select name='areyougood'><option value='super'>Super!</option><option value='matig'>Matig</option><option value='slecht'>Slecht</option></select><br><input type='submit' name='verzenden' value='Verwerk!'></form>";
} else { //als het formulier wèl verzonden is
if ($_POST['voornaam'] || $_POST['username'] || $_POST['passwoord'] == "") { // controleren we de boel
die("Je hebt een van de elementen van het formulier niet ingevult!");
}
// print de resultaten:
print "Je ingevoerde gegevens:<br>";
print "Jij heet '".$_POST['voornaam']."' en je username is '"$_POST['username']."' en je passwoord is '".$_POST['passwoord']."'";
print "<br>Hoe voel jij je? Je voelt je ".$_POST['areyougood'];
} // sluit het {} af ?>
« vorige pagina | volgende pagina »