Server Side Scripting: Arrays, POST en GET
Posted at November 19, 2011
In mijn vorige post heb ik de basis van het SSS vak behandeld, hoewel arrays een stapje moeilijker zijn behoren ze nog steeds tot de basis.
Justus heeft het hier in de hoorcolleges al over gehad maar het is voor nog steeds niet iedereen duidelijk. Een array is een variabele waar je andere waarden in kan stoppen.
Je kan zo’n array zelf maken op een aantal verschillende manieren (zoals Justus heeft uitgelegd in zijn hoorcollege) daarnaast worden er onder water al een paar arrays aangemaakt door PHP zelf. De belangrijkste hiervan zijn $_GET en $_POST, de inhoud van deze arrays gebruik je om gegevens te verwerken die met het script zijn meegestuurd.
Denk bijvoorbeeld aan een HTML formulier, zodra iemand dit formulier verstuurd heeft moet jij met de ingevulde gegevens aan de slag in je PHP script. Zo’n HTML formulier kent velden gemarkeerd met termen als naam, e-mail, telefoonnummer, bericht, etc. In de HTML code van je formulier geef je deze velden ook een code mee: de name attribuut.
Zodra dit formulier verzonden wordt krijgt het script dat het moet verwerken een array mee, afhankelijk hoe het formulier verstuurd is is dat $_GET of $_POST. Deze arrays zijn allebei literal (tekst) indexed arrays, zoals Justus ons verteld heeft kan je zo’n array op de volgende manier uitlezen.
echo $array['waarde'];
Dit gaat bij GET en POST arrays op dezelfde manier, en daar is key (hetgeen wat je tussen [”] zet) de name attribuut van het HTML formulier.
GET en POST zijn dus manieren om data van een browser / client naar je PHP script te sturen.
De functie isset(); controleert of een bepaalde variabele geset is of niet (ergens op uitkomt).
if ( !isset($_POST['mail']) ) { }
Deze if statement controleert of iemand bij een formulier het veld heeft ingevuld met de name ‘mail’. Uit de if komt het omgekeerde (if it is not set) door het uitroepteken (een logische not).