Inhoud: Overzicht methodel Algemene informatie Inhoudsopgave deel 1 Voorbeelden informatieboek deel 1 Inhoudsopgave deel E Voorbeelden informatieboek deel E
ENIGMA De Stichting ENIGMA Online biedt haar gebruikers een database, gevuld met een curriculum dekkende hoeveelheid leermateriaal voor het vak informatica. Om toch enige lijn te houden in al dat materiaal, gaan we uit van de volgende onderverdeling:
In het kernprogramma komen de volgende onderwerpen aan bod:
Informatieverwerkende systemen Elementaire bewerkingen Hardware Visueel Programmeren met Java Maatschappelijke aspecten Besturingssystemen Databases Netwerken en Internet Geschiedenis van de computer
In het verdiepingsprogramma (alleen vwo) komen de volgende onderwerpen aan bod:
Objectgeoriënteerd programmeren met Java Informatiemodellering Cryptografie, van klassiek naar digitaal Artificial Intelligence Vakgebied informatica
In het examenprogramma (havo en vwo) komen de volgende onderwerpen aan bod:
XHTML/CSS PHP/MySQL Ambient intelligence (o.a. domotica) MMI Software engineering Robotica Typografie
Laatste update: januari 2011
INFORMATICA Informatica is een vak dat in de 2e fase van Havo en VWO gekozen kan worden. Bij Informatica worden de achtergronden van computers behandeld. Om een vergelijking met de auto industrie te maken: je gaat onder de motorkap kijken. Informatica houdt NIET in: spelletjes uitproberen, informatie op het Internet zoeken, webpagina’s ontwerpen, grafieken maken met MS-Office etc. Dergelijke toepassingen horen bij andere vakken thuis. Was gebeurt er wel?. Je leert hoe een computer werkt, je gaat gegevensbestanden opzetten, zelf computerprogramma’s maken etc. Alle aspecten van de ICT (Informatie en Communicatie Technologie) komen stap voor stap aan bod. Onderwerpen De 3 onderdelen van ICT worden uitgebreid behandeld: hardware, databases en software. Je ontdekt dat een computer werkt op basis van binaire getallen (nullen en enen). Je leert hoe een computer deel kan uitmaken van een netwerk en hoe randapparaten als scanners en diverse opslagmedia werken. Je leert gegevens op een gestructureerde wijze in bestanden opslaan en informatiesystemen opzetten. Je leert hoe het kernprogramma (besturingssysteem) van een computer in elkaar zit en zelf programma’s maken voor bepaalde toepassingen, van eenvoudig rekenwerk tot computergraphics. Opbouw leerstof en examens Havo 4: basiskennis en basisvaardigheden (is: kernprogramma) Laatste toetsweek Havo 4: 1e schoolexamen (theorie) Havo 5: drie semesters, elk afgesloten met een schoolexamen (1x theorie, 1x programmeren, 1x project (software enginering)) Vwo 4: basiskennis en basisvaardigheden (is kernprogramma) Vwo 5: verdieping (deel V) Laatste toetsweek Vwo 5: 1e schoolexamen (theorie) Vwo 6:drie semesters, elk afgesloten met een schoolexamen (1x theorie, 1x programmeren, 1x project (software enginering)) Er zijn geen landelijke examens voor Informatica. Lesmateriaal Als basis wordt de Enigma lesmethode gebruikt. Deze bestaat uit traditionele lesboeken – een Informatieboek en Verwerkingsboek (met opdrachten) - aangevuld met allerhande lesmateriaal in digitale vorm. Voor het ontwerpen van databases wordt gebruik gemaakt van standaard software van Microsoft (Access/SQL). Voor het ontwikkelen van software wordt ondermeer JAVA van Sun Microsytems gebruikt. Profiel Informatica is met name geschikt voor leerlingen met een NT profiel, maar leerlingen met een ander profiel kunnen het ook kiezen. In principe is het bedoeld voor alle Havo/Vwo leerlingen die niet alleen met computers willen omgaan maar willen weten hoe ze werken en zelf computerprogramma’s en bijbehorende bestanden willen kunnen maken.
&
! "" # $ %
"
& ! " ' ( ) * + & ,
-
& !
-
& / "
-
& &
&
"" ( " ( " 0 "" & % 1 $
2 3 "
"" ( 3 " " ( " 3 " 4 * %5*6 * 076 * 50#6 & * 8076 9 & * (
":$ & * 0 ""
2 " * 1 * $"$ & 9 , * 1 $ * "
& & ' ) .
& & & ' )
&
&
'
2 1 $
7%/ 9 70/ 2
& / " & *$ & 2 : & # & 0 " & 9*670/ & *(* & "6 2**(* & ;" $ " 7 ' # ' + ' / ' & % ' ' / ' ) 4 $ ' . , ' ," ' /
!"
#
&
'
(1,*0$ $
' ' ) ) . . . & & & & & & & & && && &' &) &)
%" + < = > 2 " (
" ? $ ? ; 2
% " ? 6 @ $ $ # $ 3 5 ? * " " & 2 7 % " ' # $ ) 2 " 1" . / 6 9 + 2 " $ > & 2 7 % "
& * " $ & 2 6 & & * "
"" >
"" & ' 2 61" 6 & ) 2 6 " 6 ( " ' ! "
"" ' 7 -"
"" ' 0
&. & & & ' ' ' '& '& '' '' ') '. '. ' ' ) ) ) ) ) ) ) ) )& )' )' )'
)
' & 7
"" ' ' 9 $ " ' ) # " ' . 4$" " " + ) 2 ,"% " ) 2
$ ) 9 ) & 9
$% &'"" ("&
&
&
)) )) ). ) ) ) . . .
! $ 1 $ 01$$ " 1 $ + $ %$ ":$ %$ ":$ 1 %$ ":$ 1 %$ ":$ : , , $1 9 " & " 1 & ( & 1 & & ;
)* !
$
* + 0+
0+ , !
& % " 6 ' ! $ 0+ 0+ 0 ! $ & ! $ & # & #
1 $
. . .' .' .) .. .. . & & '
. . & & ' ) ) ) .
)
+
&
' ) .
&
'
7 " " 2- " 7 "
" " "" +A4B+ A 4
C * +A4 + " $ & + ' !
" +
" 1 & %5*6 & 076 & 4=;6 & & 50#6 & ' 7 " " & ) +5D44 & . 56 2 "" E ! . !70D,F . (1 "" +< ; $ +A4 !
G1:>
# "" G
"" 1: * -
$ 3
,
(1,*0$ $
9 9 1 $ " (
9$ " ,$$ $ " # 1 $ ,"" &
" & ; & E H 7 "" ' 5 1 $"
' #9,G, " ' "B,C ' & ,6 ' ' , #9, ' ) ," " ' . 2 *5+ ' # #4 ' 9 3@
& ' ) . . . & ' ) . .
& & ' ) ) ) . . .
) .
2 " ) D7 4 ) ;6" (
1 $ . 21 1 $ . ( "
1 # D#, !" > " + "" & *" & & %, & " & & !+/ & ' !,7+ & ) D/#+ & . 2+*,%
-.&' & "!
&
' )
+
7 $ " ," ? 6/ ?< 9"
& 2 2"" ' !
" *
;" $ ;" $ %"# ; & * ;5%9 ' ? 5 / / / ,9@ & *
@ & % " & % 1$$ "
& & * /,9 & ' ,*%@ +1 ' +1 $ $ 7 1$$ "
) ; " 1$$ " ) # $ $
' ' ' ) ) . . . . . .
& & & & & & & && && &' &) &. &. & & & & ' ' ' ' ' '& '' ''
(1,*0$
*+,$-&(.++/
! " ! # ! $%& "'() ! * $+ % ,
# - . ! ! $ - ! $ / ! " 0 . - "
$ 0 # 0 1. .
$%&'(
!" ! " ! #
)%&'(
(1,*0$
!!
!"#$%#! &'()## *#$+$)#,#( " # $%
' ' ' # ( # % ) * ( '
#
+ #
' + , - . '
/ # *
#
0 * (
(1,*0$
!"!#!! !"#! "!#! "#! $
% & ' ( ! ! ! ! ! ! ! ! ! )
* +,- . %/. 00+,- 00 %/.
. 1 # 2 &
) ! 3 ' 3"#!4 ! " ! 4 1 . 3!""#! !! 00 5
.
Hoofdstuk 3
35
Hardware
3 HET WERKGEHEUGEN Alle computers zijn gebouwd volgens het principe van de wiskundige John von Neumann (1903-1957). Hij was wetenschappelijk adviseur van het ENIAC-team, die een van de eerste computers bouwde. Von Neumann ging ervan uit dat zowel de instructies (het computerprogramma) als de data binair konden worden opgeslagen in het werkgeheugen (ook wel intern geheugen genoemd). Moderne computersystemen hebben grote werkgeheugens nodig van minimaal 512 MB. Vooral het werken met geluid en afbeeldingen vraagt veel geheugencapaciteit.
Bij de huidige computers bevindt het programma zich in het werkgeheugen. Bij de allereerste computers was dat niet het geval. Het programma werd van buitenaf ingevoerd via een ponsband of het werd in de hardware aangebracht. De wiskundige John von Neumann kwam in 1945 met het idee om ook het programma in het geheugen te plaatsen: het ‘stored program concept’. De CPU had de taak de instructies van dat programma uit het geheugen op te halen, te verwerken en de resultaten weer in het geheugen terug te zetten. Dit wordt de Von Neumann-architectuur genoemd.
Je maakt bij het werkgeheugen onderscheid tussen RAM, cachegeheugen en ROM.
3.1 RAM RAM is de afkorting van Random Access Memory: vrij toegankelijk geheugen voor het besturingssysteem en de gebruiker om daar tijdelijk gegevens in op te slaan. 'At random' betekent willekeurig: het maakt niet uit waar de gegevens in de chips zijn opgeslagen. De processor kan die snel vinden en gebruiken voor de verwerking. RAM-chips worden geleverd als DIMM's: Dual Inline Memory Modules, dunne strips met geheugenchips die in de geheugenbank op het moederbord worden geplaatst. De geheugenchips kunnen twee elektronische toestanden weergeven: geleidend en niet-geleidend: 0 of 1. Het grootste nadeel van RAM is dat het kwetsbaar is, De RAM-chips moeten constant onder elektrische spanning staan om de inhoud te bewaren. Zodra de stroom wordt onderbroken, wordt alles gewist. DIMM's zijn de opvolger van de SIMM-modules. RAM-chips hebben ook een aantal voordeHet belangrijkste verschil tussen beide typen is len: hoewel ze klein zijn, kunnen ze veel dat DIMM’s een 64-bit datapad hebben en gegevens bevatten. De processor kan ze SIMM’s een 32-bit. snel benaderen om de inhoud op te vragen. Er zijn verschillende type DIMM-modules: x SDR SDRAM Ze zijn in de loop van de tijd steeds goedx DDR SDRAM koper geworden en daarom bevatten mox DDR2 SDRAM derne computers RAM-chips met een grote x DDR3 SDRAM geheugencapaciteit. SDDRAM:
opdracht 32
Synchronous Dynamic Random Access Memory SDR: Single Data Rate DDR: Dual Data Rate De laatste heeft een doorvoersnelheid die twee keer zo hoog ligt als die van SDR.
ENIGMA
38
Informatieboek
4.1.2 HARDE SCHIJF In tegenstelling tot het flexibele materiaal van een diskette, bestaat een harde schijf uit een aantal met magnetisch materiaal beklede platen van glas of metaal die met grote snelheid ronddraaien. De opslagcapaciteit is ook veel groter dan een diskette. Een harde schijf in een moderne computers kan meerdere GigaBytes aan gegevens bevatten. Het aantal platen en de samenstelling van de magnetische laag bepalen de opslagcapaciteit. Harde schijven zijn zeer gevoelig voor stof. De lees- en schrijfkoppen bewegen zo dicht over het oppervlak dat een stofdeeltje een kras zou maken. Daarom worden harde schijven beschermd door een luchtdicht afgesloten metalen omhulsel. Daarin draaien de platen met duizenden omwentelingen per minuut.
Bron: Erwin Suvaal
4.1.3 TAPE Een tape verschilt van magnetische schijven door de manier waarop data wordt gelezen en weggeschreven. Bij een tape gebeurt dat sequentieel (achter elkaar), terwijl een schijf de data random (willekeurig) kan lezen. Dit maakt een tape zeer geschikt voor het maken van een backup, maar ongeschikt voor het snel bewerken van een file. DDS (Digital Data Storage) is een populair formaat voor het maken van backups op tapes. Het is gebaseerd op de techniek van DAT (Digital Audio Tape), maar door het gebruik van betere tapes en een foutcorrectiemechanisme is het mogelijk bestanden op te slaan en zonder fouten weer te lezen. opdracht 40
4.2 OPTISCHE OPSLAG Op optische schijven is data weggeschreven door microscopisch kleine putjes (pits) te persen in het oppervlak van de schijf. De niet-bewerkte gebieden rond de pits heten lands. Om gegevens te lezen schijnt een laser een straal op de schijf. De laserstraal bevindt zich aan de onderkant, zodat de pits daar uitsteken als kleine dammetjes.
Bron: Erwin Suvaal
' ( )( '* +, )
-
# (
. cijfer >= 6-
( /
true false- 0 (
,
+ - / ( 1)
(
2 + -
!"#$ %&
!"#$ %&
!"#
'* ( (-
. 8
. 9
$!# : 8;
. <
!"#$
, % / %, , % %,
. = 8
3( ZOLANG ( / - '* 1 (( 2 +
, 4 ( / ( - #
(( + 55 (. (-
6 ZOLANG7( ( / ( ) , )
TOTDAT7( ( , 4 ( '* + 55 7 , ( / ( - ) (
ZOLANG7( TOTDAT7(
( ((7 55 + -
(1,*0$
! " #$ % &' ( ) ( ) beginkapitaalVeldrenteVeld termijnenVeld (
eindkapitaalVeld berekenKnop
$ * ) !
int beginkapitaal; beginkapitaal = Integer.parseInt(beginkapitaalVeld.getText()); int rente; rente = Integer.parseInt(renteVeld.getText()); int termijnen; termijnen = Integer.parseInt(termijnenVeld.getText()); int kapitaal; kapitaal = beginkapitaal; int termijn; termijn = 1; while (termijn <= termijnen){ kapitaal = kapitaal + kapitaal * rente / 100; termijn = termijn + 1; } eindkapitaalVeld.setText(String.valueOf(kapitaal));
(1,*0$
for (int termijn = 1; termijn <= termijnen; termijn++) 0. :7 77 . . #. / 0 1. 2
1 0 0
+ 3". 4 0 0 1 0 5 !"#$% & '#$ !"( ) *+,- . 3" • MOD. 1 0 • STR2 0 01 0 / . 6 7 String.valueOf() , 1 $ • INT 1 0 0 . 0 84 / . 4 00 4 5 .71 3"/ 77 , 1 0 2 0 59 7 2 6
0 8 1 6. 0 . 1 4 5" , 1 1 01 . 3"5
(1,*0$
!"#$%!%&'$(!#)"%*+,+(%
! " # ! # $ ! ! %
! # & & # $
" ' ( ! )
* ! -'%()!"".!%#$%!%&'$(!#)"%*+,+(% ( ( ( + ! ! ,-., /0 /0 123 4 ( /0 12
1256/0
!
"
! # $ %
#
! &
' ( )
*+
#
,
-
#
#
,# , ,
.
#
!
, #
#
$ %
,
/
0 12
, #
/
#
3
# # # # , # 4
#
(
# ,
4
% !
!
%
,
-
WHFKQLVFK
#
,
#
, 5
1
# #
/
(1,*0$
$ % ! $! " # $ ! ! % ! " ! ! • % ! ! • & % ! • " ! #
$ • ! % ! '
$
% !'
% ! # ! #
(1,*0$
! " " " ! " " # $%& ' " $ " $ # $ ( "! " " ) ! $* " " $+,! ) " " - $. " " - " " / " " ! " " $*01' " - 2 32 3 " - " " " " 2 3 !
(1,*0$
LEDEN lidnr
voornaam
naam
adres woonplaats
telefoonnr
geslacht
geboortedatum
inschrijfdatum enkel dubbel
TEAMS Teamcode lidnr
klasse
SCORES lidnr
teamcode
gewonnen
verloren
BOETES boetenr
lidnr
datum
bedrag
(QLJPD
! " "" # $ % &' ( ) $ %" *+,
" ( *+, " *+, " *+, " " *+, * - " *
" *+, $
SELECT FROM
voornaam, naam, telefoonnr leden;
! "
#$
SELECT FROM WHERE
COUNT(*) leden NOT woonplaats = ‘Doetinchem’;
%
& '
'
( #$ '
&)
SELECT FROM
SUM(bedrag) AS totaal_boetes, boetes;
!"# $%&'(
(
)
'
* ' )
')*)
SELECT DISTINCT woonplaats FROM leden ORDER BY woonplaats;
SELECT FROM WHERE
count(*) AS Beek leden woonplaats = ‘Beek’;
+
+,-./ %0 ( '
1
2
'+)*,-
SELECT woonplaats, count(*) AS aantal_leden FROM leden GROUP BY woonplaats;
(1,*0$
!"#$% !"!&!''
! ! " # $ # $% ! & ! ' ! # $ (
# $ # $
()#*!+)#'+),$
) * ! (
! ++ !
! ! ! !
1 ! " !" ! #
! " # $
! ! $ ! $
! # # %
! ! !
"
! !
#
! " !
!
! $ #
&
#% ! !$
' $ ( )$ !
! * +, !
$ $$ $ -. ' !
$
$ $" ! $
% " # !
/
/# $ # 0#
*
! /% "
#
1
2 "
$
3 #
)$ #
# " $ !
# ' ! $$
# !
#%
#
,
!
4 %
! # '
$ # " % #
! #
! " # !
% ! #
!
! # !
5
6
# ! 7
(1,*0$
! " ! # ! ! ! ! $ "! ! % ! ! ! ! & ! ''! ! ! (% ! ! ! (% ! ) (% ! ! ! $ ! ! * ! ! (% ! ! ! (% ! ! ! ! ! ! # (% (% ! ! ! # (% $ ! + , $ ! ! ! ! ! !
$ ! + , ! $ (% ! (
! + , * ! (%- $ %+$" % ,$ % ! ! . $/0 ! + ! , $ % " $ % !
! "
# $
! % $
& &'()* + ( ,--.
/0121
!
&
"
"
3 !
!
*4 5
6 !
5 6
4
!
'! "
1 3 !
"
3 ( 53 (6
3
! "$ ! "
3 ($ 7 ! 3 ($
" " ! 8
! 1
3 ($
! " # "
!
$
$ $
%$ "
&
!"#!
' ( )
%$
$ * ! +
# $ $
$ !
, -
! * $
$%&'(")%%!!)*!%'"&
$ .'+ $
/
! #
!
$
0 10 !
#
! *
$ %$
$
! $ $ $
$
,
2
#
#
3
#
! *
,
( )
!
"
#
$
• %
•
• &
• '()*
• *
• %
!"#
+
" ,
- .
"
$ /0
)
1
(
23
.
#
1 .
.
44 .
5
67
8 1
8 * ,69:.6;<9-
6
.
.
1
(1,*0$
!"#$%&"##$' (
() ( ((( ) ((( * & ( ) "#%+ ), ( -. ) "#/$ ) ( ( (( ) ( )0 ( ( ((( ), ( ) 1 & & ) 1 1( 2
3 4 !"#/#&"5"#'), ( )6 ( (
( ( & )4 & (
) !" 7 & ( )1 (& )1 ( ( ( 8 9( !"5-$&":%/' )
(1,*0$ !"
! " #$%& $%'( )
* " * + + + + , , + $%-. / + /012+ 2 1 ) + $%-. , 3 / 4 * 5"12 #5 1 2 (
+
) $%-. ) 6 7 8 1 9 6
+!6 9 6 0 37 ) ) + ) + + ) $%: ) " " 7;+ ,7$%:+ ) " */ /;8$ , 2 < =
(1,*0$
!" # !" "!$ % & '()*' ) # + !" # + , # & + - - . " / ) # !") + ( + + 0 ) + # 1 • *' • ! ' 2 2 + • 3 4 2 " • ! 2 ## + 1 5 3 4
) 2 6 '()*'+ (
## - & + 2 (
# &(
( 2 + +
# 2 + + ( + +#
+ + (+ -+ + * #+ # 7$87 $ 9 + : ;8 9! 2 4 5 + + !"< & + #* + 4 + 4='4=784 =' 4 =7 9 6 + (& > ( + 4 & > + + & " ( -+ # - -8 9 + & ;
2# + & "
! " # $% % % & $'(
! )#*
+
, ' , -
+' , . +' / * ++ 0 122 0 1223
+ 122 )+
% % % %% % & $'(
4 5 + 4 *6 + 4 5 4 7+ % +
+ 55 55 ('88 55 9 28 ! $55
*% , - ( + 55 * "
*
+ # 8 551 7 ! 1 + 5538 ,
*% #+ / % * + 55 0 :; < % %
&
+'%
! ! ! , / 4 ! , , / 0
! , , , 0 0 ! ! ! !!
!
(1,*0$# * %
4
*% 8+ 8 55 4 #3 4 : #3+ 4 # 83 4! : $+ 3+ 4, : $8 $ % 55 $ % + 8 78 55 78 +
78 %
$ *
#8
* ! ); ! ('; !
;3 ! );+
#3+ !! :; !, );#8
*%
$
* , 55 * , *
* 55 ;2= , : #8 ;>+?8 8@A , : #8 ;>+? + 8?*@A ,! : #8 ;>+?> ;@A ,, : #8 ;>+?# 8?;@A ,/ 3 3> ; ,0 :* #*
+
, $ %
* ++ / &+ #+
55 0 "3+ 55 2 55
% ! 78
+ + *' , "
*
+ 5' 8 8 "#$ % & ' + B*>8 )* ++
8 :8 ! :
! ! - * ! & %
!! . ( !, - $'
!! !! !, !/ !/ !/ !0 ,4 , , ,! ,/ ,0 ,0 , , , /4 /4 /4 / / / / /0 04 0 0 0! 0, 0, 0, 0, 0/ 0/ 00
0 4 ! / 0
! )* ) !
,
/
0
+ * 38 3 8 $ 8 C +; # : +; # $ 8 C $ # ! +*+$ ! 8 '+
*% # + ! # + + !! "
+ %+ + #8 , : * % %+ , +% %+ @ A$+'' , : + + % $ 8 C +$ / +*+$ C / +'% 8$% + / " + 8 /! *' ++ > % + /, " 8 D% // + 18+
( "+ ,'
'
! ,
2#$ "
: $ + ) " " 8++
: 8 "
: +C. % ! : +; , ' 8 + / + * % #8
+$ > 8 88$ + E , + , , - +
-"' &"
<*8 8+ 9 % 9 "
(
! , 44 44 4 4 4 4! 4! 4, 4/ 40 40 40 4 4 4 4 4
! ! , / 0 0 4 !
/
-
!
' <1 +++ <1 : %+ 2 %+ <1 2 C % +8 <1 ! -*' 8
F
<1 , - *' <1 ' ! +++ ! : %+ 2 %+ ! 2 C % +8 !! -*' 8
F
!, - *'
.#"'+
!
,
(1,*0$# * %
+ . 8 &*
+8# +#* &#+ %+ + &* %%%
$ ! 4
$ )
+ : +
+ : 8+
+ : (+
+ ; #8 % 2 F D ! " ! :;
! 58;
! +C ; 1+#8 + ! ; + ! G # ! 2% # !! -+ # !! ; + ; !! 58 + ; !! - ; + ; !, 1+#8 + !, : 8+#8 * !, : 8+#8 &6 !/ ) 8+#8 ; H +#
+ ; % , G , "
+ ; $%% + , -F # , 28 % , : + ,! G $ %
! ! !0 !0 ,4 , ,0 /4
/, /, /, // / 04 0 0 0 0, 0/ 00 0 0 0 0 4 ! ! / / / 0 4 4
! !
!" ! " #$"%
...
& " " " "
% ' "( ! $" "
)$" " % ! *
" % & #
%
Dit is de hoofdkop.
Dit is een minder belangrijke kop.
" +( !
( " $"%
Dit is een alinea.
Dit is een tweede alinea.
! " " "% ,
" " $"% - " ! ".
%
Dit is regel 1.
Dit is regel 2.
!" " # !" $ %
! & ! !$
! "% ' ( "
" ) " !"
* " + ,
+ "
, "
' (
!
$ !
- "
! + ! %
h1 { color: orange }
$ + ! !
De titel
Met een link naar de volgende pagina.
. ! + ! + !
% /
h1 { color: orange; text-decoration: underline } p { background-color: gray }
De titel
Met een link naar de volgende pagina.
!"#$$
! " #
$ !
:link :visited :hover :active
Verwijzingen die nog niet bezocht zijn Bezochte verwijzingen Verwijzingen waar met de muis overheen gegaan wordt Verwijzingen waarop geklikt wordt, maar die niet worden losgelaten
Twee voorbeelden van hoe je verwijzingen kunt opmaken. Het eerste voorbeeld:
a { color: red; text-decoration: underline } a:visited { color: orange } a:hover { text-decoration: none }
Dit is een standaardverwijzing.
#%
.link { background-color: yellow; text-decoration: none; color: green } .link:hover { background-color: none }
Verwijzing van de class 'link'.
%& $ $$ '$$
& # #
' #(
#) ) *
# !
+ # #
# ! &
* ) #
!
Hoofdstuk 2
2
Interactieve websites met PHP en MySQL
33
Interactieve websites met PHP en MySQL
1 INLEIDING 1.1 WAT IS PHP? PHP is een server-side scripting taal. PHP stond oorspronkelijk voor "Personal Home Page" tools: ontworpen door Rasmus Lerdorf in 1994 en vrij ter beschikking gesteld op Internet. Sindsdien is het door vele programmeurs omarmd en ontwikkeld waardoor het een krachtige en betrouwbare ontwikkelomgeving is geworden die nog steeds vrij te gebruiken is. In PHP zijn veel elementen van andere programmeertalen geleend, zoals C en Perl. Maar het is ook zo ontworpen dat het eenvoudig in het gebruik is. De belangrijkste informatiebron voor PHP vind je op Internet op het volgende adres:
www.php.net
Websites die gebruik maken van PHP hebben vaak dit logo:
1.2 PHP EN ZIJN CONCURRENTEN PHP is een van de "grote drie" server-side scripting talen. De andere zijn: ASP: Active Server Pages, ontwikkeld door Microsoft en alleen maar beschikbaar op het Windows platform. JSP: Java Server Pages, ontwikkeld door Sun en alleen maar te gebruiken in combinatie met een Java Web Server. De belangrijkste voordelen van PHP boven de andere twee zijn: x Vrij: PHP is gratis te gebruiken x Platformonafhankelijk: is niet beperkt tot een enkel besturingssysteem of webserver x Krachtig: PHP heeft uitstekende faciliteiten om te kunnen samenwerken met databases, grafische bestanden, XML en PDF.
1.3 PHP VERSUS JAVASCRIPT De fundamentele verschillen tussen PHP en JavaScript zijn: JavaScript x Is een cliënt-side scripting taal; d.w.z. dat het script in de browser van je eigen computer wordt uitgevoerd x Statements worden door de webbrowser gerund x Scripts worden normaliter gerund na een event x De pagina kan gewijzigd worden na het tonen van de pagina.
36
ENIGMA
Informatieboek
Je moet je pagina’s online bekijken of offline als je een webserver op je machine hebt staan met ondersteuning van PHP. Alleen dan kan de code geparsed worden. Onder parsen van PHP code verstaan we het omzetten van de code naar HTML. Start de browser. Typ op de adresbalk de juiste URL. Druk op Enter. Je krijgt dan een pagina te zien die er ongeveer zo uitziet:
Als je kijkt naar de broncode van deze getoonde webpagina dan ziet die er als volgt uit:
De PHP code is verdwenen en vervangen door tekst die door het script is gegenereerd. Dat is gebeurd tijdens het runnen van het script op de webserver. Onthoud goed: je mag nooit PHP code in de broncode van een webpagina aantreffen. Als dat wel het geval is heb je ergens een fout gemaakt in het script of is het bestand als .txt opgeslagen. Om het bekijken van bestanden gemakkelijker te maken kun je in plaats van iedere keer de volledige URL in te typen ook een map in de htdocs map van je XAMPP aanmaken waarin je je scripts plaatst die je wilt testen. Voor deze module is op de lokale server een map PHP-Enigma aangemaakt. Let op! Je moet er wel op letten dat de meeste internetservers hoofdlettergevoelig zijn. Als je nu in de browser localhost/PHPEnigma intypt, krijg je iets te zien dat er ongeveer zo uitziet (zorg dat er geen index.html of index.php in de map PHP-Enigma staat):
Hoofdstuk 2
45
Interactieve websites met PHP en MySQL
Plaats echter geen puntkomma na het sluithaakje van de voorwaarde en ook niet na de else. De regels die hier gelden zijn ook van toepassing op de for-loop, de while-loop en de switch.
2.10.2 DE FOR-LOOP Voorbeeld van een for-loop: Enkelvoudig statement (for) for( initialisatie; test; ophoging/verlaging) Statement;
Meervoudige statements (for) for( initialisatie; test; ophoging/verlaging) { Statement; Statement; etc. }
$namen = array("Marja","Hans","Ronald","René","Louis","Piet"); Wil je nu alle namen uit de array in één keer onder elkaar in een genummerde lijst in een webpagina plaatsen, kun je de volgende gebruiken:
Weergeven van namen met een for-loop
in een genummerde lijst onder
$namen = array("Marja","Hans","Ronald","René","Louis","Piet"); print("In de array zitten de volgende namen:
"); print("
"); for($i = 0; $i < count($namen); $i++) print ( "$namen[$i]
" ); print("
"); ?> Als je het script uitvoert, krijg je het volgende te zien:
(1,*0$
! "
#
$ % & '(()# $ *& + ,
-. / /
+ $
!
0 & * 1 .# 1
1 * + .
2 "
(1,*0$
! "# ! $ ! ! % & ' 7 $ %
) +8 9 " ( )# * & !+
" ! ! # ,
! - &.
! ! ! " # / ! 0 ! + &" # 1 & )2$3 & 4 ! / * ! ! , *! ! & )& " & &
&# 55 2 ! / !6
!"#$#$%
!
"
#$
$ %$
& $
$
'
$ ( )
#
*+% #
$ (
) &% &% $
, - $ #
# $
.
/
# $ &% $ $ #
0 $
.
/1 .
1 / 2
#
$ &% $ #
0
.
/1 .
) 1 /
$
3
$ $
$ )
• 0$ $ $
$
$
$
• ' $
$
• 4
0
$ $
!
!
!
"
# !
$
# !
! !
! #
!
%
#
!
$
!
! ! !
#
&
! ! ''
!
( ! )*** ( +
"
,
! ! !
( ! ! +
!
# ## 4'
'
5 ' #'
# 1
! $
-'
# 6 ' ' #
(
' '
boolean isPriem (int getal) { for (int deler = 2; deler < getal; deler++) { if (getal % deler == 0) return false; } return true; }
!
" # $ %
#& ! $'
#
( )* true' )) false' + ,
true ) - .' /01
22 2/ 2
3 # # '
# &
1
7 #
'
/
-8 #
#'
# %
"**0 -
% 9 , %
' / '
:#4
#
# # #
•
(1,*0$
•
• ! " # •
• • $ " # • % & ' (
& ' &')"& ' ) #
!"#$!%
'!( )*
!
"
#
$ "
% $ %
#&
'( &
"
#
• )
* # +
&
, &
- .
-
.
• /+
/ "
& +
, + &
- ! "#! $ .
- %
&&&'.
• 0
1
& + ,
&
- '(()
* .
- + '(() * .
1
+ $
% *
-. +
+ !) ,%) - #!.&$- #!
& (+ #
#
&
# (
• & 22 - * , .
• & 3 & +
"#$"%"#&
WXSRV JUDSKHLQ !"
# $ $
$ $ $ $ "$ $ $$ %
$ $ & % % $ ' % % " % $
$ ! $ " $
'&$()*"$%$#"(
'+,-#.$$%()*/"#--/*$--.$ $ $ " $ & "
$ $ ( #
$
" " ) *+
$"
$$ ""
" ! )
" "$ % $, $- .$ # " "$
" % $ ) /$
0 % $$ 1$$ $ % " ) % $ $ % $
$ 2$ # $
! % $ $ $$ $ 3 $" $
( 4 56 $ " !
( # "
! $ # 7$ $ ' 4" # $ "# $ $
8/ %
# % $ $" 9 # ""$
*2$ 4+ $ 9 :
!"#$%&'()*+(,&-'!
(1,*0$
!! " # ! $
%
" $
" " " $
! &'&(&)'*+'+(*),' '-'* "
! ! &' ./ & &-'*" " !
0"
% $ ! ! - &'--
$ !
! " - &''1
$
! &)1
&)+