Theorie PHP1
python reformatterCanvas.py 18661 c https://www.roc.ovh/books/2024/page/php1
Wat is een webserver
Wat ga je leren?
In deze les leer je het verschil tussen een front-end taal en een back-end taal. Je leert dat PHP een back-end taal is en dat je daarom een (web)server nodig hebt om PHP te kunnen gebruiken.
Lees de tekst goed want in de volgende opdracht krijg je vragen over deze tekst.
Een webserver is een computer die verbonden is met het internet en waar bestanden op staan op staan die nodig zijn om een website te laten zien.
Elke website die jij bezoekt op het World Wide Web staat ergens op een webserver. Zo'n webserver heeft een map (folder) met daarin webpagina's die bestaan uit HTML pagina's, CSS bestanden, Javascript, PHP bestanden en derglijke.
Bestandssorrten
Functie
HTML
Basis opmaak van een webpagina
CSS
Detail opmaak van een webpagina
JavaScript
Interactie programmeren in de browser
PHP
Interactie programmeren op de server
Tot nu toe ben je gewend om de HTML-bestanden gewoon vanaf je eigen computer te starten door er dubbel op te klikken. De browser leest de bestanden en laat deze een mooie (of lelijke) pagina zien.
Je bent als gebruiker van webapplicaties gewend om bijvoorbeeld in te loggen, een bericht achter te laten of een email te sturen. Deze applicaties zijn dynamisch . Dynamische applicaties hebben een input (invoer) en zetten deze om in een output (uitvoer) .
Bijvoorbeeld:
input : gebruikersnaam en wachtwoord output : een boodschap dat het aanloggen is gelukt of een boodschap dat het aanloggen niet is gelukt.
Om een dynamische webapplicatie te maken heb je meestal een webserver nodig die de pagina's serveert . De webserver krijgt van de browser, de cliënt een verzoek en de webserver behandeld het verzoek en stuurt een antwoord terug. Net als een ober die een drankje serveert .
Stel je wilt een overzicht van alle studenten in een klas. Je vraagt via de browser dan om het overzicht, bijvoorbeeld door op een menu te klikken. Het verzoek gaat dan via internet naar een webserver en die stuurt het antwoord via internet weer terug naar jouw browser .
Omdat je nog geen toegang hebt tot een echte webserver gaan we er eentje simuleren. Simuleren is het 'net doen alsof'. We simuleren de webserver met een gratis applicatie (wij doen dat met XAMPP) die je kunt installeren op je eigen laptop. Dat heet dan een lokale server. Dat wordt ook wel localhost genoemd. Je laptop is dus door het gebruik van XAMPP een web server geworden.
Om een dynamische applicatie te maken gaan we in deze module gebruik maken van PHP.
De server heet ook wel back-end (achterkant). PHP is een back-end-taal. Dat betekent dat de taal dus op de back-end, de server draait.
Een bezoeker van de site (de eindgebruiker) kan de code die op de server staat niet zien of wijzigen.
Bestandssorrten
Functie
Waar
HTML
Basis opmaak van een webpagina
Front-end / browser
CSS
Detail opmaak van een webpagina
Front-end / browser
Javascript
Interactie programmeren in de browser
Front-end / browser
PHP
Interactie programmeren op de server
Back-end / server
Database
Met PHP kun je ook een database benaderen waarin je gegevens kan opslaan voor een langere periode, bijvoorbeeld de gegevens van een gebruiker zoals voornaam, achternaam, email en wachtwoord.
Als je met PHP aan de slag gaat dan kun je pagina's dynamisch maken. Dit betekent dat de output afhankelijk is van de input van de gebruiker.
XAMPP
Tijdens deze module maak je gebruik van een locale server. We gebruiken hiervoor XAMPP.
Je kunt XAMPP downloaden en installeren als je dat nog niet hebt gedaan.
Weet je (nog) niet hoe je XAMPP moet installeren op jouw Windows machine of heb je een "port conflict", kijk dan hier
Links to an external site. .
Inleveren
Volg de instructies in de les en lever je werk dat je in de les hebt gemaakt hier in.
XAMPP
Wat ga je leren?
Ter voorbereiding van PHP gaan we in deze les leren hoe we XAMPP kunnen installeren.
PHP is een back-end taal. Dat betekent dat deze taal op de server draait. Op de server wordt je code uitgevoerd. Omdat wij (nog) geen server op het internet hebben, installeren wij een soort server op onze laptop. Onze laptop is dan een back-end en ook f ront-end tegelijkertijd. Onze browser ( front-end ) 'praat' dus met de PHP server Xammp ( back-end ).
Later gaan we ook databases gebruiken en daarvoor installeren we een database server. Dit is een onderdeel van Xampp.
OK let's go!
We gaan XAMPP installeren! Volg alle stappen zoals die hier beschreven staan.
Download Xampp
Links to an external site.
Installeer Xampp met het installatieprogramma.
installeer deze op: C:\Xampp
Tijdens de installatie kies je drie opties: Apache (dat is de PHP-server), MySQL (dat is de database server) en PHPMyAdmin, dat is de tool om de database mee te beheren.
Start Xampp en start daarna Apache en MySQL
Maak een nieuwe folder in c:\xampp\htdocs\phplevel1-jouw-naam
vervang jouw-naam door jouw naam Overal waar in het vervolg j ouw-naam staat, vervang je de tekst door jouw naam.
Start VCS en open de folder c:\xampp\htdocs\phplevel1-jouw-naam
Maak een nieuw bestand en noem deze php01-jouw-naam.php
Vergeet niet jouw-naam te vervangen!
Type de volgende code in:
Voer de code uit.
Ga naar C:\xampp\htdocs en verwijder het bestand index.php
Ga nu naar de browser en type als url, localhost in.
Open nu de folder en het bestand dat je net hebt gemaakt.
Wat gebeurt er in deze code?
Op regel 1
We zijn klaar met onze commando's in PHP. We vertellen de server/XAMPP dat we stoppen met "PHP praten".
Test de code en controleer of er in je browser de tekst Hello World! verschijnt.
Je hoeft niets in te leveren, maar als PHP/XAMPP niet werkt dan kan je de volgende opdracht niet maken.
Variabelen
Wat ga je leren?
In alle programmeertalen gebruik je variabelen. In deze les leer je wat een variabele is en hoe je deze kan gebruiken.
Computer geheugen
Een variabele is een plek in het geheugen van de computer waar je informatie in op kan slaan.
Het geheugen van een computer loopt bijvoorbeeld van adres 0 tot aan adres 32768.
Dan kan het zijn dat je op plaats 21 311 een plaats hebt waar je jouw naam hebt opgeslagen en op plaats 18711 heb je een plaats in het geheugen waar je jouw leeftijd hebt opgeslagen. Omdat deze getallen lastig zijn te onthouden kunnen we deze geheugenplaatsen een naam geven. Dat heet een variabele.
Variabele namen
Als je gaat programmeren ga je best veel gebruik maken van variabelen. We geven dus een naam aan een geheugenplekje, bijvoorbeeld plaats 21311 is waar jouw naam staat, noemen we mijnnaam en de plaats 18711 waar jouw leeftijd in staat noemen we mijnleeftijd .
Doosje of lade
Je zou een variabele ook kunnen zien als een doosje of een lade waar je iets kan instoppen.
Net als bij een doos of een lade, kan je de doos/lade openen en kijken wat er in zit; er kan niets in zitten, maar er kunnen ook getallen of zinnetjes in zitten. En....je kunt de inhoud ook veranderen.
In de eerste 2 minuten van deze video (NL)
Links to an external site.
wordt dit nog een keer uitgelegd. In dit filmpje gaat het over de programmeertaal Python , maar dit geldt ook voor PHP (en bijna alle andere computertalen)
PHP Variabele
In PHP kun je een variabele makkelijk herkennen omdat die altijd met een $-teken begint, bijvoorbeeld $mijnnaam , $mijnleeftijd zijn twee variabelen.
Hoe ken je een waarde toe aan een variabele?
Stel jij heet Mohammed en je wilt de variable $voornaam de waarde Mohammed geven. Je gebruikt daar voor het = teken. Zie dit niet als ' is ' maar als ' wordt ' .
op regel 1 wordt de computer verteld dat je PHP code gaat gebruiken.
op regel 2 hier staat dat de variabele met de naam $ mijnnaam de waarde Mohammed krijgt. Dus $ mijnnaam wordt "Mohammed". Mohammed is een zinnetje dus dat staat tussen "".
In dit geval is het een zinnetje van één woord, maar het zou ook meer woorden kunnen bevatten daarom staat een zinnetje, ook al is het maar één woordt altijd tussen "". De computer weet dan precies waar het zinnetje begint en waar het eindigt.
En niet vergeten de ; om aan te geven dat het commando klaar is!
Elk PHP commando wordt in PHP (en ook in bijv. JavaScript en C#, C, C++ en Java) afgesloten met een ;
Even terug naar het doosje of de lade; we hebben dus een doosje gemaakt met het label mijnnaam en in het doosje hebben we de string-waarde "Mohammed" gezet.
Het = teken dat we hebben gebruikt kun je dus lezen als 'stop de volgende waarde in dit doosje'.
Variabele naamgeving
Zoals gezegd, een variabele naam in PHP begint altijd met een $-teken met daarachter een woord zonder spaties. De variabele bestaat dus altijd uit één woord. Omdat je soms duidelijk wil maken wat er in de variabele staat gebruik je goede namen die vaak wat langer zijn.
Bijvoorbeeld $ hoofdpersonagevandefilm .
Om dit leesbaar te maken, maken we hiervan hoofdPersonageVanDeFilm .
Dus $ hoofdpersonagevandefilm wordt $ hoofdPersonageVanDeFilm
Zie je het verschil?
In code ziet het er dan zo uit.
$hoofdPersonageVanDeFilm = "Ryan Reynolds";
Zo bestaat de naam van de variabele nog steeds uit één woord, maar is het wel beter leesbaar.
Let op want de variabele $ mijnnaam en $ mijnNaam zijn twee verschillende variabelen. We zeggen dan dat variabelenamen hoofdlettergevoelig zijn (in het Engels; case sensitive ).
Strings
Wat ga je leren?
Variabelen heb je in alle soorten en maten. De twee belangrijkste zijn getallen en strings.
In deze les leer je wat een string variabele is en hoe je er in PHP mee kan werken.
We hebben al kennis gemaakt met strings in de vorige les over variabelen, maar in deze les gaan we hier nog wat verder op in.
Je hebt verschillende soorten variabelen.
Om te beginnen zijn er twee hoofdsoorten: strings en getallen . In deze les gaan we kijken naar strings.
Strings
Strings (letterlijk vertaald een ketting) is een ketting van letters en/of getallen achter elkaar. Om het begin en een eind van een string aan te geven staat een string altijd tussen quotes. Je mag enkele of dubbele quotes gebruiken.
Op regel 3 staat een string tussen dubbele quotes en op regel 4 staat een string tussen enkele quotes '.
Met strings kan je verschillende dingen doen. Zo kan je strings aan elkaar plakken. Dat heet concatenation
Links to an external site. (Engels) .
In PHP plak je strings aan elkaar door tussen twee string een punt te zetten.
Op regel 5 worden eigenlijk drie strings aan elkaar geplakt. Eerst de string die in de variabele $voornaam staat dan de string " " (deze staat niet in een variabele) en dan string die in de variabele $achternaam staat.
Als je de HTML code
afdrukt dan wordt er een regel overgeslagen. "
" is een string.
echo "
"; // regel overslaan
Dus regel 1 drukt de string "
" af en de browser slaat dan een regel over.
De // aan het einde van de regel is overigens commentaar. Het doet niets en het heeft alleen als doel om je code duidelijker te maken (voor anderen of later voor jezelf).
Maak nu de opdrachten.
Getallen
Wat ga je leren?
Een veel gebruikt type variabele is integer. In deze les je wat een integer variabele is en hoe je daar mee kan werken in PHP.
Naast strings hebben we ook getallen. Deze zijn weer onderverdeeld in gehele getallen (integers) en gebroken getallen (float). Dat verschil is in PHP niet zo belangrijk omdat PHP zelf het juiste soort kiest.
Getallen zijn wel anders dan strings want je kunt er mee rekenen. Om aan te geven dat je een getal bedoeld en geen string, zet je een getal niet tussen quotes.
Dus $voorbeeld="9" is de string "9" en $voorbeeld=9 is het getal 9.
Net zoals je getallen kan optellen, kun je ook andere bewerkingen uitvoeren.
Bewerking
teken
voorbeeld
optellen
+
echo $a + $b;
aftrekken
-
echo $a - $b;
vermenigvuldigen (keer)
*
echo $a * $b;
delen
/
echo $a / $b;
Ga door naar de opdrachten.
Condition if-then-else
Wat ga je leren?
Code wordt regel voor regel van boven naar beneden uitgevoerd, Je hebt echter ook code die alleen maar wordt uitgevoerd als er aan een voorwaarde (of conditie) is voldaan. Hiervoor heb je conditional statements in PHP, if (in het Nederlands: als ).
In deze les leer je hoe je met een if in PHP kan werken en hoe je dus kan zorgen dat code alleen wordt uitgevoerd als er aan die ene voorwaarde wordt voldaan.
IF
Stel je maakt een spel en je moet bepalen of de speler het juiste antwoord heeft gegeven:
Juiste antwoord? Score wordt verhoogd met 1.
Onjuiste antwoord? Score blijft hetzelfde.
Er komt dus alleen iets bij de score als er aan een voorwaarde is voldaan.
Dat ziet er in PHP zo uit:
$score=0;
$vraag = "Hoeveel is 10+2?";
$antwoord = 12;
if ( $antwoord == 12 ) {
$score = $score + 1;
}
echo "De score is: $score";
Op regel 6 wordt het antwoord gecontroleerd. Is het antwoord juist dan wordt alle code tussen { en } uitgevoerd. In dit geval is dat alleen regel 7.
Op regel 4 zie je = en op regel 6 ==
Dat komt omdat ze beide iets anders betekenen.
teken
voorbeeld
betekent
=
$antwoord = 12
De waarde van $antwoord wordt 12
==
$antwoord == 12
Is de waarde van $antwoord gelijk aan 12?
We kunnen ons afvragen of waarden gelijk zijn, maar er zijn nog een heel stel andere voorwaarden. De belangrijkste zijn:
teken
voorbeeld
betekent
==
$antwoord == 12
Is de waarde van $antwoord gelijk aan 12?
!=
$antwoord != 12
Is de waarde van $antwoord ongelijk aan 12?
>
$antwoord > 12
Is de waarde van $antwoord groter dan 12?
<
$antwoord < 12
Is de waarde van $antwoord kleiner dan 12?
>=
$antwoord >= 12
Is de waarde van $antwoord groter of gelijk aan 12?
<=
$antwoord <= 12
Is de waarde van $antwoord kleiner of gelijk aan 12?
ELSE Stel voor dat als de score fout is dat er dan een punt van de score wordt afgetrokken, dan zou je dat zo kunnen coderen
$score=0;
$vraag = "Hoeveel is 10+2?";
$antwoord = 12;
if ( $antwoord == 12 ) {
$score = $score + 1;
} else {
$score = $score -1;
}
echo "De score is: $score";
Maak de volgende opdrachten en gebruik indien nodig de volgende bronnen.
Bronnen
Jaap vd Veen - statements
Links to an external site. W3 Schools - operators Links to an external site. W3 Schools - if else
HTML, PHP en include
Wat ga je leren?
In deze les leer je hoe je HTML en PHP samen kunt gebruiken.
Je leert ook het wat het include en require in PHP doet en hoe je dat kunt gebruiken.
Include
Om je code overzichtelijk te houden, stop je niet al je code in één groot bestand, maar je deelt het op in meerdere kleinere bestanden. Je kunt dan snel de juiste code vinden.
Zo kun je php code hebben die een footer afdrukt. Stel je wilt je volgende footer:
";
echo "(c) Copyright
";
echo "De inhoud en structuur van onze webpagina's zijn auteursrechtelijk beschermd.";
?>
Deze footer wil je in je pagina afdrukken dan kun je deze pagina 'includen'. Dat gaat als volgt:
My first paragraph.
Zie je wat er op regel 9 gebeurt? Je voegt als het ware de inhoud van de footer.php toe op regel 9. Hieronder zie je dan wat de include eigenlijk doet.My first paragraph.
"; echo "(c) copyright