1. Inleiding
1.1. Deze cursus
Deze Online Cursus is bedoeld om u kennis te laten maken met PHP en MySQL. U wordt door de installatie en enkele voorbeelden geleid. Na deze cursus heeft u een idee van wat PHP is en kunt u eenvoudige PHP pagina's maken. Mocht uw interesse gewekt zijn dan is het zeker de moeite waard een training te volgen onder leiding van een ervaren docent.
1.1.1. Voorkennis
Om deze Online Cursus te kunnen volgen moet u bekend zijn met (X)HTML. Ook is het prettig als u weet wat een server is. Ervaring met programmeren is niet noodzakelijk.
1.1.2. Samenhang met andere cursussen
PHP, zoals we het hier gebruiken, hangt erg sterk samen met (X)HTML. U kunt een Learnit Training (X)HTML volgen om hier bekend mee te raken. Als u verder wilt werken met PHP kunt u bij Learnit een PHP basiscursus of een PHP vervolg cursus volgen. Een alternatief voor PHP is ASP (Active Server Pages), Learnit verzorgt ook ASP trainingen.
1.1.3. Opzet
U kunt deze cursus gewoon hoofdstuk voor hoofdstuk doorlopen en de opdrachten maken. Er wordt vanuit gegaan dat u de software geïnstalleerd heeft zoals hieronder beschreven wordt, en dat u steeds de voorgaande hoofdstukken gelezen heeft. Verder wordt er regelmatig gebruik gemaakt van screenshots, door verschillen in het besturingssysteem en andere software pakketten kunnen deze afwijken van wat u op uw scherm ziet. Hecht hier niet teveel waarde aan!
1.2. Wat is PHP
In 1994 ontwikkelde Rasmus Lerdorf van IBM de scripttaal PHP dat toen voor Personal Home Page stond. Sinds PHP versie 3.0 in 1998 staat het voor PHP Hypertext Preprocessor. Dit is dan ook wat het doet: hypertext (HTML) voorbewerken. Een scripttaal is een high-level programmeertaal die gemaakt is om eenvoudig software te ontwikkelen. Deze taal is met name geschikt voor het ontwikkelen van dynamische webpagina's. De meest recente versie is PHP5, die eigenlijk in 2007, sinds versie 5.2.5, echt stabiel is en daarom vanaf toen als standaard geïnstaleerd werd.
1.2.1. Dynamische pagina's
Webpagina's zijn van oorsprong simpele HTML bestanden die op een server staan te wachten tot een bezoeker ze opvraagt om ze te bekijken. Dit soort pagina's worden ook wel statisch genoemd. Hiertegenover staan dynamische pagina's. Dit zijn webpagina's die pas gegenereerd worden op het moment dat ze opgevraagd worden door een bezoeker die pagina opvraagt van een server. Het mooie hieraan is dat de pagina dus keer op keer kan veranderen, afhankelijk van de tijd, bezoeker of een ingevuld webformulier.
Er bestaan verschillende technieken om dynamische pagina's te maken. Veelgebruikte methoden zijn tegenwoordig ASP (Active Server Pages) van Microsoft en de open source variant PHP, die we hier bespreken. Ook het oudere CGI (Common Gateway Interface) wordt nog steeds veel gebruikt
1.2.2. PHP en (X)HTML
In het bovenstaande verhaal kwam u al regelmatig de term (X)HTML (eXtensible Hypertext Markup Language)tegen. De X staat tussen haakjes om aan te geven dat we het niet persé over de eXtensible versie van HTML hebben, al wordt deze versie door velen als de meest gewenste HTML variant gezien. Als u niet weet wat HTML is, zal het lastig zijn de rest van deze cursus te volgen en is het aan te raden eerst een Training (X)HTML te volgen.
PHP en HTML zijn eigenlijk een onvermijdelijke tandem. Praktisch alles wat u met PHP genereert is HTML; we gebruiken PHP om automatisch, en op het moment dat daar vraag naar is, een HTML bestand te genereren. Een bezoeker van de website surft naar een .php bestand, de PHP interpreter op de webserver gaat aan het werk, maakt HTML en stuurt dit terug naar de browser die het weergeeft alsof het een normale HTML pagina is. In hoofdstuk 2 gaan we aan de slag met een eenvoudig voorbeeld dat dit zal illustreren.
1.2.3. PHP en MySQL
MySQL is een open source database en wordt, hoewel het ook met andere databases kan, meestal gebruikt als hét opslagmechanisme achter een dynamische webpagina die ontwikkeld is met PHP. De database bewaart alle informatie, en PHP zorgt ervoor dat deze data aangepast en weergeven kan worden als webpagina. In deze cursus zullen we enkele toepassingen behandelen die gebruik maken van MySQL.
De onderlinge samenhang van HTML, PHP en MySQL kan als volgt worden weergegeven:

Een client, in dit voorbeeld de webbrowser Firefox, vraagt een pagina op bij de server. De PHP interpreter stuurt een SQL (Structured Query Language) bevraging naar de MySQL database. Deze voert de query uit en stuurt de resulterende data terug naar de PHP interpreter die er HTML omheen genereert. Deze HTML wordt weer naar de client gestuurd. Als het bovenstaand voor u nog een beetje raadselachtig is, is dit geen reden om af te haken, in de hieropvolgende hoofdstukken komt dit alles nog uitgebreid aan bod!
1.3. Dowloaden en Installeren
Zoals eerder gezegd, PHP is slechts een scripttaal, en het is niet mogelijk een scripttaal te downloaden of te installeren. We kunnen dus eigenlijk ook niet spreken van het "installeren van PHP", we kunnen wel een zogenaamde interpreter instaleren. In deze cursus gebruiken we PHP om dynamische webpagina's te genereren. We willen dan ook een webserver installeren die PHP kan interpreteren.
We gaan er vanuit dat u een versie van MS Windows als u besturingssysteem gebruikt, al is dit niet noodzakelijk om deze cursus te volgen.
1.3.1. XAMPP
PHP wordt praktisch altijd gebruikt in combinatie met de webserver Apache en de database server MySQL. De meest eenvoudige manier om een goed werkende server te installeren is door een WAMP (Windows Apache MySQL PHP) pakket te downloaden. XAMPP is zo'n pakket dat met name zeer geschikt is voor het ontwikkelen en testen op de eigen computer. Het pakket bevat naast de normale WAMP onderdelen nog enkele vaak gebruikte toevoegingen. U kunt proberen via deze directe link (33.7MB) de software te downloaden. Mocht dit niet lukken, surf dan naar: www.xampp.org, en klik verder naar "XAMPP for Windows", en download daar de installer.
Na het downloaden opent u de installer, en volgt u de aanwijzingen op het scherm.
Opmerking: Onthoud waar u XAMPP installeert!
Na de installatie wordt de vraag gesteld of u het "XAMPP control pannel" wilt starten, antwoord "ja", en start Apache. Om te controleren of dit goed is gegaan surft u naar http://localhost. Als alles goed is gegaan ziet uw scherm er ongeveer uit als:

Mocht dit niet het geval zijn, controleert u dan eerst of u niet al een server heeft geïnstalleerd (IIS bijvoorbeeld) en schakel deze uit. Mocht het dan nog steeds niet werken, dan kunt u de veelgestelde vragen lezen op de XAMPP website.
Neem rustig even de tijd om rond te kijken in de XAMPP pagina's.
Naast XAMPP zijn er ontzettend veel andere WAMP pakketten waaruit u kunt kiezen, in deze cursus gaan we er echter vanuit dat u XAMPP geïnstalleerd heeft!
Disclaimer: De gratis online cursussen zijn beschikbaar gesteld en ontwikkeld door het bedrijf Learnit. Deze cursus is gratis maar mag niet gebruikt worden voor commerciële doeleinden. Dit werk is auteursrechtelijk beschermd; het auteursrecht ervan berust bij Learnit.


