Skip to main content

Theorie 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.

BestandssorrtenFunctie
HTMLBasis opmaak van een webpagina
CSSDetail opmaak van een webpagina
JavaScriptInteractie programmeren in de browser
PHPInteractie 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  .

 image-1655279215130.png

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.

BestandssorrtenFunctieWaar
HTMLBasis opmaak van een webpaginaFront-end / browser
CSSDetail opmaak van een webpaginaFront-end / browser
JavascriptInteractie programmeren in de browserFront-end / browser
PHPInteractie programmeren op de serverBack-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  

Inleveren

Volg de instructies in de les en lever je werk dat je in de les hebt gemaakt hier in.

 

 

 

 

Logical operators en korte broeken

Wat ga je leren?

In deze les gaan we leren hoe we condities kunnen combineren.

We leren hoe we code alleen kunnen laten uitvoeren als er aan twee voorwaarden wordt voldaan.

En we leren hoe we code kunnen uitvoeren als er aan één van de twee voorwaarden wordt voldaan.

We hebben het gehad over if-then-else.

Met een if-then-else kun je voorwaardelijk code uitvoeren. Alleen als een bepaalde vergelijking waar is dan wordt bepaalde code uitgevoerd.

Stel je hebt een variabele $temperatuur waarin de temperatuur staat en stel je hebt een andere variabele waarin de dag van de week staat. Dus bijvoorbeeld:

$temperatuur = 21;
$dagVanDeWeek = 'ma';

Dus in dit voorbeeld is het maandag en de temperatuur is 21 graden. Stel dat ik code moet schrijven die mij advies geeft over het dragen van een korte broek. Ik wil alleen een korte broek aan doen als het zaterdag is én als de temperatuur minimaal 21

is. Dat zijn dus twee voorwaarden die waar moeten zijn.

Hoe doe je dat in code?

$temperatuur = 21;
$dagVanDeWeek = 'ma';

if ( $temperatuur >= 21 && $dagVanDeWeek == "za" ) {
  echo "Advies is om vandaag een korte broek aan te trekken.";
} else {
  echo "Advies is om vandaag geen korte broek aan te trekken.";
}

Zie je het && - teken?

Dat betekent dat beide voorwaarden waar moeten zijn. Dus de temperatuur is groter of gelijk aan 21 graden én de dag van de week is 'za'.

Stel dat we nu op zaterdag of zondag altijd een korte broek willen dragen, hoe zou de code er dan uit zien?

$temperatuur = 21;
$dagVanDeWeek = 'ma';

if ( $dagVanDeWeek == "za" || $dagVanDeWeek == "zo" ) {
  echo "Advies is om vandaag een korte broek aan te trekken.";
} else {
  echo "Advies is om vandaag geen korte broek aan te trekken.";
}

Zie je het || - teken?

Dat betekent dat aan één van de voorwaarden moet worden voldaan. Dus als de dag van de week zaterdag óf zondag is dan volgt het advies voor het dragen van een korte broek.

In de voorbeelden wordt && gebruikt voor and en || voor or. In de meeste programmeertalen kun je ook gewoon het woord and en or gebruiken. Dat werkt in PHP ook.

Dus de volgende twee regels doen hetzelfde.

if ( $temperatuur >= 21 && $dagVanDeWeek == "za" ) {....

if ( $temperatuur >= 21 and $dagVanDeWeek == "za" ) {....

Dus samengevat



BetekenisVoorbeeld
&&andAND, aan beide voorwaarden moet zijn voldaanif ( $temperatuur >= 21 && $dagVanDeWeek == "za" ) {
||orOR, aan één van beide voorwaarden zijn voldaanif ( $dagVanDeWeek == "za" || $dagVanDeWeek == "zo" ) {

Haakjes in condities

Stel we willen alleen een korte broek aan als de temperatuur minimaal 21 graden is én de dag zaterdag is of de dag zondag is.

Dan krijgen we de volgende code:

if ( $temperatuur >= 21 && $dagVanDeWeek == "za" || $dagVanDeWeek == "zo" ) {

Maar stel dat het anders is. Op zondag willen we altijd een korte broek dragen en op zaterdag alleen als de temperatuur minimaal 21 graden is. Dus in code:

if ( $dagVanDeWeek == "zo" || $temperatuur >= 21 && $dagVanDeWeek == "za" ) {

Maar deze code is bijna hetzelfde als de vorige code, alleen de volgorde is anders. Om de code goed uit te voeren moeten we haakjes gebruiken:


Korte broek in het weekend als de temperatuur 21 graden of hoger is:

if ( $temperatuur >= 21 && ( $dagVanDeWeek == "za" || $dagVanDeWeek == "zo" )  ) {

Het geen tussen haakjes, de || wordt eerst uitgevoerd, daarna volgt de &&


Altijd een korte broek op zondag én op zaterdag alleen een korte broek als de temperatuur 21 graden of hoger is.

if ( ($temperatuur >= 21 && $dagVanDeWeek == "za" ) || $dagVanDeWeek == "zo" ) {

Hier wordt eerst de && uitgevoerd en daarna volgt de ||.