Har du af og til spekuleret over hvordan de forskellige websteder, du besøger, kan genkende dig, når du vender tilbage? Forklaringen er enkel, og når du har læst denne kapitel, ved du hvorfor og hvordan, du selv kan gøre noget tilsvarende.
For at benytte dette eksempel, kræves der, så vidt jeg ved, ikke PHP version 4.0, da vi netop udvikler vores egen sessionsstyring, og derfor kræver det altså ikke understøttelse af sessions, som er nyskabelsen med PHP 4.0.
Du skal nu til at begive dig ind i en spændende verden, hvor næsten alt kan lade sig gøre mht. dynamiske websider. Hvad der gør dette muligt, vil du få en introduktion til i dette kapitel.
Dette kapitel viser dig hvordan, du kan holde styr på dine besøgende, og på baggrund af gemte oplysninger, har mulighed for, at dirigere dine besøgende rundt på sider, der er af relevans for netop dem. Det der gør det muligt, er, at vi har oprettet en database med oplysninger om de besøgende. Oplysninger indeholder i vores eksempel kun de enkelte brugeres status - gæst, medlem, eller administrator, men det kunne sagtes udbygges til at have oplysninger om alt muligt andet; kun fantasien sætter grænser.
Hvorfor nu udvikle sin egen sessionsstyring? Til det spørgsmål findes der mange svar, men de mest åbenlyse for mig er følgende:
Faciliteten sessioner er først medtaget i PHP 4.x, og der er stadig mange websteder, som kun tilbyder PHP 3.x.
Sessioner i standardversionen kræver understøttelse af cookies hos klienterne. Mange har fravalgt muligheden for at modtage cookies
Man kan godt nok skrive en databasehandler til PHP, så den ikke kræver understøttelse af cookies hos klienterne, men af interesse ville jeg lave min egen, uden at skulle begrænse mig til PHP 4.x. Eksemplet er også samtidigt en glimrende indgangsvinkel til PHP's verden.
For at du skal kunne afvikle eksemplerne i artiklen, skal du have følgende software installeret:
En webserver - jeg bruger apache version 1.3.12
PHP installeret på webserveren - jeg bruger PHP version 4.0.1.pl2
MySQL installeret på serveren - jeg bruger MySQL version 3.23.10-alpha
Operativsystemet på serveren skal være enten Linux eller Windows - jeg bruger Linux, men eksemplerne er også testet på en Windows NT 4.0 Workstation