Webontwikkeling 3

2014 januari examen

8 januari (Kemme)

Theorie

  • Leg uit PDO
  • Leg uit SQL Injections
  • Leg uit 2 step design

Pass/Fail

Voeg een veld leeftijd toe aan het registratie formulier. De leeftijd moet tussen de 1 en 99 zijn. Als je inlogt als admin moet je in je spelers overzicht ook de leeftijd tonen. De sql voor de db te alteren kreeg je.

8 januari (Steegmans)

Theorie

  • Get/post
  • XSS
  • 2 step design

Pass/Fail

Extra functionaliteit : voeg een knop "toon alle vragen" toe aan elke categorie in "beheer categorieen" deze toont alle vragen voor deze vategorie (op een nieuwe pagina)

2017 samenvatting

Met dank aan Wouter Cypers: 2017 Wouter Cypers Samenvatting_Web_3.pdf

2017 theorievragen antwoorden

Met dank aan Sander Vanhoegaerden: 2017 Web-3-theorievragen.pdf

2018 januari examen

18 januari

Theorie

Geef 4 functies waarvoor we het web.xml file gebruikt hebben.

Vul in: Een wachtwoord mogen we niet ………………………… in een database opslaan. Je kan het beter eerst …………………………. Het beste is om zelfs eerst een ……………………… toe te voegen aan je wachtwoord voordat je het …………………………………

Naast die, welke drie andere risico’s hebben we ons nog tegen beveiligd? Zeg welke, waarom en hoe en leg de code uit (je moet geen code geven, er wordt ook geen getoond).

Mondeling

Wat zijn sessions? Leg zo volledig mogelijk uit. Wanneer zou je sessions gebruiken en wanneer cookies?

Praktijk

Je krijgt een web project al opgesteld van fietsen. De home pagina heeft een inlog systeem, of een knop om uit te loggen indien je al ingelogd bent. Dan is er een overview pagina waar de fietsen worden getoond. Ten slotte is er ook een “Voeg fiets toe” knop die je naar een formulier brengt om een fiets toe te voegen. Regel: gebruik geen scriptlets! Regel: je mag alleen code bijschrijven, niet bestaande aanpassen.

1: Op het overview zijn de fietsen nu hard coded erin gestoken. Zorg dat deze werken. Er is al een systeem voor de controller maar je moet zelf nog het nodige implementeren ( = zelf nog RequestHandlers bijschrijven).

2: OP het overview staan 2 checkboxes met een submit knop in een form voor het type van een fiets. Zorg ervoor dat wanneer ik op submit klik, ik alleen dat type fietsen zie en dat dit ook onthouden wordt als ik naar andere pagina’s ga (=cookies).

3: Het systeem van inloggen & users is al gemaakt. Zorg er nog wel voor dat wanneer een Person met de rol ADMIN is ingelogd, dat die de knop in de header “Voeg fiets toe” ziet. Users zonder die rol of wanneer niet ingelogd, zien die knop niet. Zorg ook dat het formulier werkt en dat de fiets wordt toegevoegd en dat de user dan terecht komt op de overview pagina waar hij meteen de nieuwe lijst ziet met deze fiets erin. Zorg er ook voor dat wanneer deze user dan op F5 (refresh) klikt, dat hij niet per ongeluk de fiets opnieuw kan toevoegen.

4: Breid 3 uit: zorg er ook voor dat iemand die niet authenticated is niet op de pagina van een fiets toevoegen kan komen, ook niet door in de url te typen “Controller?action=AddBike”. Wanneer dit gebeurt moet hij op de home pagina terecht komen met een error die toont “U bent niet geautoriseerd om deze pagina te bekijken.”.

2018 Oplossing Yanice Slegers

Met dank aan Yanice Slegers:
Github Repo

Rechtstreekse download

2020 januari examen

2022 januari examen

Dit vak wordt op verschillende aspecten geëvalueerd. 50% van de punten staat op de website die je doorheen het semester maakt, de website gaat over spelers, matches en trainingen van een ploeg en maak je per twee. De andere 50% kan je verdienen op het mondeling examen, wat bestaat uit een praktijk (20%) en theorie (30%) gedeelte.
Voor het mondeling examen heb je de laatste versie van je eigen gemaakte website als gegeven, het praktijkgedeelte is open boek/laptop, het theoriegedeelte is gesloten boek. Voor het praktijkgedeelte krijg je 30 minuten de tijd om de functie te implementeren, daarna geef je een korte demo van het resultaat en upload je de gezipte code op Toledo. Bij de theorievragen krijg je telkens enkele minuten de tijd om je voor te bereiden.
Praktijk:
  • Voeg een teller toe aan de match overview-pagina die telt hoeveel matches er op dat moment in de databank zitten.
  • Voeg een extra pagina toe waarin staat hoeveel trainingen er op dat moment in de databank zitten.
Theorie: