Multimedia, rapportage - DSpace at Open Universiteit
Multimedia, rapportage - DSpace at Open Universiteit
Multimedia, rapportage - DSpace at Open Universiteit
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