Werking PHP website

Voor veel mensen is het nog onduidelijk hoe PHP nu eigenlijk werkt. Ik leg in dit artikel uit wat er gebeurt als u een website opent waarin een PHP-code is ingesloten.

Back to the roots: HTML

Als u al eens de broncode van een website hebt bekeken, hebt u ongetwijfeld een reeks aanwijzingen gezien, de zogenaamde HTML-code. HTML, ofwel 'HyperText Markup Language', is een taal waarmee webpagina's worden opgemaakt. Strikt gesproken is HTML geen programmeertaal, omdat belangrijke kenmerken van programmeertalen zoals lussen, variabelen en constanten ontbreken. HTML geeft een browser aanwijzingen hoe een bepaalde pagina eruit moet zien, welke kleuren de tekst mag hebben, op welke plek een afbeelding wordt ingevoegd en welke koppeling naar welke pagina leidt.

U kunt de HTML-broncode van een pagina bekijken door een pagina te openen en vervolgens in het menu View of Beeld de optie Page Source of Paginabron bekijken te kiezen.

Binnen de HTML-broncode worden nu de aanwijzingen voor PHP ondergebracht. Deze worden met specifieke tekens van HTML-code gescheiden, zodat de computer onderscheid kan maken tussen HTML en PHP.

De opbouw van een URL

De navigatie op het internet vindt volledig via URL's plaats. URL betekent Uniform Resource Locator. In feite is dat niets anders dan een internetadres dat schuilgaat achter koppelingen waarop u kunt klikken of achter domeinnamen die u in de adresbalk kunt typen. Een adres zoals http://www.yahoo.com is net zo goed een URL als bijvoorbeeld http://muchmagic.wiwi.uni-frankfurt.de/~jfranke/index.htm. Ik gebruik deze URL als voorbeeld om te laten zien hoe een URL is opgebouwd.

Een URL begint altijd met de weergave van het gebruikte protocol. In dit geval is dat http://, het HyperText Transfer Protocol. HTTP verzorgt de communicatie met de webserver en geeft aan dat met deze URL een webpagina wordt geopend. Met andere protocollen zoals FTP, het File Transfer Protocol (ftp://), kunt u bestanden downloaden of naar een server overbrengen. Eenvoudig gesproken zorgen protocollen voor de communicatie tussen twee deelnemers, in dit geval de webserver en de webclient (de computer van de internetsurfer). Zonder protocol weet geen van de deelnemende partijen wat de verzonden gegevens betekenen en in welke volgorde deze moeten worden verzonden.

Na het te gebruiken protocol volgt de naam van de computer (in dit geval muchmagic) en het domein waar deze computer te vinden is wiwi.unifrankfurt.de. Zo'n domeinnaam leest u van rechts naar links: binnen het zogenaamde top-level-domein de bestaat een domein uni-frankfurt dat zelfs weer een subdomein wiwi bevat. In het voorbeeld www.yahoo.com is www de naam van de computer die u wilt gebruiken en google.com het domein. Dit deel van de URL beschrijft welke computer waar staat. IN het voorbeeld betekent dit dat de computer met de naam muchmagic in het top-level-domein voor Duitsland (de) staat en daar op de Universiteit van Frankfurt (uni-frankfurt) binnen de faculteit van economische wetenschappen (wiwi) te vinden is.

Na de opgave van de computer en het domein volgt het pad waar het document op de computer is opgeslagen. In het voorbeeld staat het bestand index.htm in de submap ~jfranke/.

Maar waar staan bij Yahoo! de map en het bestand? Hier eindigt de URL na het adres van de computer. Welk bestand moet dus worden weergegeven? De meeste webservers zijn zo ingesteld dat ze automatisch een bepaald bestand weergeven als de URL niet compleet is. Meestal is dat het bestand index.htm of index.html. Als u in de adresbalk http://www.yahoo.com/index.html typt, verschijnt de startpagina van Yahoo!.

Websites zonder PHP oproepen

Als u een dergelijke URL of een website rechtstreeks oproept via de adresbalk van de browser of via een koppeling, vraagt de browser bij de computer die het doel is naar de gewenste en in de URL opgegeven bestand. De computer herkent de aanvraag en stuurt deze naar de server-service die op de computer draait. Een server-service is een programma dat op een bepaalde computer draait en dat bepaalde diensten of services aanbiedt. Op een enkele computer kunnen verschillende onafhankelijke servers actief zijn. Elk daarvan kan een eigen type aanvraag verwerken. Het begrip webserver is hier dus niet correct. Nauwkeuriger gezegd is een webserver een computer waarop een service actief is (ofwel een programma is gestart) dat aanvragen van browsers met het HTTP-protocol kan verwerken. Apache is een dergelijk programma dat een aanvraag in de vorm van een URL beantwoordt met een website ofwel het gevraagde document.

Bij vrijwel alle grote bekende websites is het verloop aanzienlijk ingewikkelder en wordt PHP of een vergelijkbare taal voor dynamische websites gebruikt. Dat is een duidelijk teken voor de verdere ontwikkeling van het World Wide Web.

Weergave van een eenvoudige aanvraagWeergave van een eenvoudige aanvraag

Oproepen van websites met PHP

Als het gevraagde document een bestand is dat PHP-broncode bevat, komt hier nog een extra stap bij. Voordat het document naar de browser kan worden verstuurd, wordt de PHP-parser gestart die de aanwijzingen vertaalt en uitvoert welke in het HTML-bestand zijn opgenomen. Dit gebeurt op de computer waaraan de aanvraag is gericht. Daarom is hier sprake van een opdracht die aan de kant van de server wordt uitgevoerd.

De browser van de gebruiker die de aanvraag heeft ingediend, heeft dus niets te maken met het uitvoeren van de PHP-opdrachten. Alle opdrachten worden altijd op de server uitgevoerd, waarna zuivere HTML-code wordt teruggezonden. Dat is ook de reden dat u in de broncode van webpagina's die u in een browser bekijkt, nooit PHP-opdrachten zult aantreffen, want deze worden al op de webserver uitgevoerd en vervangen door zuivere HTML-code.
© 2009 - 2024 Rensisdik, het auteursrecht van dit artikel ligt bij de infoteur. Zonder toestemming is vermenigvuldiging verboden. Per 2021 gaat InfoNu verder als archief, artikelen worden nog maar beperkt geactualiseerd.
Gerelateerde artikelen
Websites blokkeren in Internet ExplorerWebsites blokkeren in Internet ExplorerTijdens het surfen op internet kun je websites tegenkomen die je niet wilt bezoeken, je kunt deze websites in een aantal…
Geld verdienen met je receptenVeel mensen plaatsen heerlijke recepten op internet. Er zijn vele websites waar deze kunnen worden geplaatst. Het is ook…
Het geheugen, werking en verbeteringGeheugen is de eigenschap informatie te kunnen opslaan. Van de kwaliteit en van het geheugen en de techniek het maximaal…
Group Anonymous en het lamleggen van websitesIn 2010 werd de wereld verrast door een nieuw soort activitisme. Groepen mensen gingen niet meer de weg op om ergens teg…

De rol van PHP (Hypertext Preprocessor)De rol van PHP (Hypertext Preprocessor)De basisprogrammeertaal om websites te maken is HTML. Daarnaast zijn er ook aanvullende programmeertalen, zoals Java, AS…
Van kleine instructies naar grote processenVan kleine instructies naar grote processenHet centrale deel van de computer is de processor, de CPU. De processor voert eenvoudige instructies uit die achter elka…
Rensisdik (17 artikelen)
Laatste update: 29-10-2010
Rubriek: Pc en Internet
Subrubriek: Programmeren
Per 2021 gaat InfoNu verder als archief. Het grote aanbod van artikelen blijft beschikbaar maar er worden geen nieuwe artikelen meer gepubliceerd en nog maar beperkt geactualiseerd, daardoor kunnen artikelen op bepaalde punten verouderd zijn. Reacties plaatsen bij artikelen is niet meer mogelijk.