22.12.2012 Views

Multimedia, rapportage - DSpace at Open Universiteit

Multimedia, rapportage - DSpace at Open Universiteit

Multimedia, rapportage - DSpace at Open Universiteit

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

7 Opzet van de videobank architectuur<br />

7.1 Architectuur<br />

De IPO multimedia webarchitectuur besta<strong>at</strong> uit 3 delen:<br />

• d<strong>at</strong>abase server<br />

• web server<br />

• video server<br />

De d<strong>at</strong>abase server bev<strong>at</strong> inform<strong>at</strong>ie over producties, videotypes, producenten, projecten,<br />

dvc’s enz. De video server bev<strong>at</strong> de videoclips van de producties. De web server heeft als<br />

taak de inform<strong>at</strong>ie van de d<strong>at</strong>abase server en de videoclips van de video server weer te<br />

geven en toegankelijk te maken.<br />

Op de web server draait server side code. Bij dit project is de server side code geschreven<br />

in de PHP programmeertaal. Het doel van de server side code is het genereren van client<br />

side code. Onder client side code wordt verstaan:<br />

• HTML<br />

• Javascript<br />

• Actionscript<br />

Voor de gener<strong>at</strong>ie van de client side code gebruikt de web server inform<strong>at</strong>ie van de<br />

d<strong>at</strong>abase server. Deze inform<strong>at</strong>ie wordt verpakt in de vorm van HTML en javascript code<br />

en wordt vervolgens aan de browser van client aangeboden. De browser van de client zet<br />

deze code vervolgens om in een website.<br />

7.2 Server side code:<br />

Elke pagina van de website wordt gegeneerd door een lokale PHP code en door een<br />

globale PHP code. De globale PHP code wordt het ‘systeem’ genoemd. Het systeem is een<br />

PHP classe waarin algemene veel gebruikte functies zijn onderbracht. De PHP code van<br />

een pagina maakt gebruik van deze algemene functies om de client side code te kunnen<br />

genereren. Het systeem is opgedeeld in modules. Elke module neemt een bepaalde taak<br />

voor zijn rekening. Een module is een PHP classe met specifieke functies voor het<br />

uitvoeren van een specifieke taak. Zo is er een d<strong>at</strong>abase module (w<strong>at</strong> een PHP classe is)<br />

met speciale functies gericht op het uitvoeren van d<strong>at</strong>abase taken zoals lezen, schrijven<br />

en het verwijderen van rijen uit een d<strong>at</strong>abase. Als een pagina inform<strong>at</strong>ie nodig heeft uit de<br />

d<strong>at</strong>abase dan laadt deze pagina via het systeem de d<strong>at</strong>abase module. Vervolgens kan de<br />

pagina met behulp van de functies uit deze module gegevens opvragen uit de d<strong>at</strong>abase en<br />

gegevens wegschrijven naar de d<strong>at</strong>abase. Hieronder volgt een opsomming van de<br />

modules waaruit dit systeem is opgebouwd.<br />

Elke module neemt een specifieke taak voor zijn rekening:<br />

• D<strong>at</strong>abase module. Bev<strong>at</strong> functies voor het lezen en schrijven, verwijderen en<br />

toevoegen van gegevens aan de d<strong>at</strong>abase.<br />

• Debug module. Bev<strong>at</strong> functies voor fout afhandeling en houdt een log bij van alle<br />

activiteiten op de website.<br />

• Extgrid module. Deze module bev<strong>at</strong> functies voor het genereren van tabellen en het<br />

visueel weergegeven van gegevens uit de d<strong>at</strong>abase.<br />

• Filehandler module. De filehandler module bev<strong>at</strong> functies die van toepassing zijn op file<br />

processing zoals kopiëren en verwijderen van bestanden of mappen. Het comprimeren<br />

van mappen, het uploaden van bestanden, enz.<br />

• Imagehandler module. Deze module bev<strong>at</strong> functies om afbeeldingen te manipuleren,<br />

en bev<strong>at</strong> routines om afbeeldingen up te loaden. De module maakt hiervoor gebruik<br />

van de filehandler module.<br />

• Identific<strong>at</strong>ion module. Deze module bev<strong>at</strong> functies die kunnen helpen bij het<br />

identificeren van gebruikers.<br />

• Pagelayout module. Deze module bev<strong>at</strong> functies voor het laden en verwerken van<br />

HTML templ<strong>at</strong>es.<br />

34

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!