Macromedia Dreamweaver MX - ASP Ontwerpen van dynamische websites met ASP en Access
Macromedia, Dreamweaver, UltraDev, Fireworks, Flash, Sitespring en FreeHand zijn handelsmerken of gedeponeerde handelsmerken van Macromedia, Inc. in de Verenigde Staten en/of andere landen. Alle overige handelsmerken en merknamen zijn eigendom van hun respectieve eigenaars. Speciale dank aan Lieve en Guy voor hun meer dan gewaardeerde medewerking. 1
Verhaert, Patrick – Macromedia Dreamweaver MX – ASP / Patrick Verhaert; Geel: Campinia Media vzw, 2003; 456 p; index; 24 cm; gelijmd. ISBN: 90.356.1171.3; NUGI 854; UDC 681.3.06 Wettelijk depot België: D/2003/3941/14 Campinia Media vzw Kleinhoefstraat 4 B – 2440 – GEEL (Belgium) Tel.: (+32) 014/59 09 59 Fax: (+32) 014/59 03 44 e-Mail:
URL: <www.campiniamedia.be> Copyright 2003:
No part of this book may be reproduced in any form, by print, photoprint, microfilm or any other means without written permission of the publisher. Niets uit deze uitgave mag worden verveelvoudigd en/of openbaar gemaakt door middel van druk, fotokopie, print, microfilm of op welke andere wijze ook, zonder voorafgaande schriftelijke toestemming van de uitgever.
Inhoud 1 Introductie..............................................................................................13 1.1 Voorkennis................................................................................................13 1.2 Conventies. ..............................................................................................14 1.3 Systeemvereisten. ....................................................................................14 1.3.1 Microsoft-Windows. .......................................................................14 1.3.2 Mac-OS..........................................................................................14 1.4 Lesmateriaal bij dit handboek...................................................................15 1.5 De help-functie. ........................................................................................16 1.6 Extensies..................................................................................................16
2 Statische en dynamische websites. ....................................................17 2.1 Statische vs. dynamische websites. .........................................................18 2.1.1 Statische webpagina's. ..................................................................18 2.1.2 Dynamische webpagina's. .............................................................18 2.1.3 Statische website...........................................................................19 2.1.4 Dynamische website of Webapplicatie. .........................................19 2.2 Ondersteunde servermodellen in Dreamweaver MX. ..............................20 2.2.1 Active Server Pages (ASP):...........................................................20 2.2.2 ASP.NET: .......................................................................................21 2.2.3 Java Server Pages (JSP): .............................................................21 2.2.4 ColdFusion MX: .............................................................................21 2.2.5 PHP: ..............................................................................................21
3 IIS en PWS. ............................................................................................23 3.1 Externe webserver (live server)................................................................23 3.2 Testserver. ................................................................................................25 3.2.1 Verborgen map of subdomein op de live server. ...........................26 3.2.2 Lokale testserver............................................................................26 3.2.3 Externe testserver..........................................................................29 3.3 IIS of PWS installeren. .............................................................................30 3.3.1 IIS installeren op Windows 2000 Professional...............................30 3.3.2 IIS installeren op Windows XP Professional. .................................32 3.3.3 PWS installeren op Windows 98....................................................33 3.3.4 Overige Windows systemen. .........................................................34 3.4 Testserver raadplegen vanuit een browser...............................................34 3.4.1 Vanaf een browser op de testserver. .............................................35 3.4.2 Vanaf een browser op een ander toestel binnen het netwerk........36
4 Virtuele mappen onder IIS en PWS. ....................................................37 4.1 Map binnen de wwwroot delen via het web..............................................38 4.2 Map buiten de wwwroot delen via het web...............................................39 4.3 Personal Web Manager. ...........................................................................42 4.4 Internet Information Services. ..................................................................45
Inhoud - 3
5 Connecteren op een externe testserver..............................................47 5.1 Connectie via FTP. ...................................................................................47 5.2 Connectie via het netwerk. .......................................................................53 5.2.1 Connecteren vanaf een Windows machine. ..................................54 5.2.2 Connecteren vanaf Mac OSX. .......................................................56 5.2.3 Connecteren vanaf Mac OS9. .......................................................58
6 Dynamische website definiëren...........................................................63 6.1 Virtuele map toevoegen aan de testserver. ..............................................63 6.2 Website definiëren....................................................................................64 6.2.1 Local info. ......................................................................................64 6.2.2 Remote info. ..................................................................................65 6.2.3 Testing Server. ...............................................................................66 6.2.4 URL Prefix testen...........................................................................68 6.2.5 Connecteren met de testserver......................................................69 6.3 Nieuwe ASP-pagina aanmaken in Dreamweaver.....................................70 6.4 Live Data View..........................................................................................72 6.4.1 Preview in Browser. .......................................................................72 6.4.2 Rechtstreeks openen in een browser. ...........................................72 6.4.3 Live Data View. ..............................................................................73
7 Initiatie tot ASP - VBScript. ..................................................................75 7.1 ASP-delimiters. .........................................................................................77 7.1.1 Opdracht 1 .....................................................................................78 7.2 Variabelen.................................................................................................79 7.2.1 Variant............................................................................................79 7.2.2 Variabelen dimensioneren. ...........................................................81 7.2.3 Variabelen in Dreamweaver. ..........................................................83 7.2.4 Soorten variabelen.........................................................................83 7.3 Strings. .....................................................................................................85 7.4 Operatoren. ..............................................................................................89 7.4.1 Rekenkundige operatoren. ............................................................89 7.4.2 Vergelijkende operatoren...............................................................90 7.4.3 Logische operatoren. .....................................................................90 7.5 Voorwaardelijke instructies. ......................................................................91 7.5.1 If-Then-Else. ..................................................................................91 7.5.2 Opdracht 2. ....................................................................................96 7.5.3 Opdracht 3. ....................................................................................97 7.5.4 Select-Case. ..................................................................................98 7.6 Lussen....................................................................................................100 7.6.1 For-Next.......................................................................................100 7.6.2 While-Wend. ................................................................................101 7.6.3 Do-While. ....................................................................................103 7.6.4 For-Each-In..................................................................................104 7.7 Commentaar. ..........................................................................................105
4 - Dreamweaver MX - ASP
7.8 Datum en tijd. .........................................................................................105 7.8.1 Datum- en tijdformaten. ...............................................................106 7.8.2 Datum splitsen in dag, maand en jaar. ........................................107 7.8.3 Tijd splitsen in uren, minuten en seconden..................................108 7.8.4 Local Identifier ID (LCID). ............................................................109 7.8.5 Opdracht 4....................................................................................111 7.9 Procedures. ............................................................................................113 7.9.1 Subroutines. .................................................................................113 7.9.2 Functies. ......................................................................................115 7.9.3 Includes........................................................................................117 7.10 Naamgeving..........................................................................................118 7.11 Gereserveerde woorden. ......................................................................119 7.12 Bronnen. ...............................................................................................119
8 Het ASP-objectmodel..........................................................................121 8.1 Formulieren. ...........................................................................................122 8.2 Het Request-object.................................................................................123 8.2.1 Request.QueryString. ..................................................................124 8.2.2 Opdracht 1. ..................................................................................127 8.2.3 Request.Form. .............................................................................135 8.2.4 Opdracht 2. ..................................................................................136 8.2.5 Request.Cookies .........................................................................139 8.2.6 Request.ServerVariables. ............................................................140 8.2.7 Request.ClientCertificate. ............................................................141 8.2.8 Prioriteiten....................................................................................141 8.3 Het Response-object..............................................................................142 8.3.1 Response.Write. ..........................................................................142 8.3.2 Response.Redirect. .....................................................................142 8.3.3 Opdracht 3. ..................................................................................143 8.3.4 Response.Buffer. .........................................................................145 8.3.5 XHTML en beveiligde pagina's. ...................................................146 8.3.6 Response.End. ............................................................................148 8.3.7 Response.Cookies.......................................................................149 8.4 Het Session-object. ................................................................................153 8.4.1 Session.SessionID en Session.Timeout. .....................................154 8.4.2 Sessievariabelen aanmaken........................................................156 8.4.3 Waarde van een Sessievariabele uitlezen...................................156 8.4.4 Sessievariabelen wissen. ............................................................156 8.4.5 Een sessie beëindigen.................................................................156 8.4.6 Login met sessievariabelen. ........................................................157 8.5 Het Application-object.............................................................................162 8.5.1 Toepassingsvariabelen aanmaken. .............................................162 8.5.2 Waarde van een toepassingsvariabele uitlezen. .........................162 8.5.3 Toepassingsvariabelen wissen. ...................................................162 8.6 Het global.asa bestand...........................................................................163
Inhoud - 5
8.7 Het Server-object. ..................................................................................168 8.7.1 Server.MapPath. ..........................................................................168 8.7.2 Server.CreateObject. ...................................................................168 8.8 Variabelen: een vergelijkend overzicht. ..................................................169 8.9 Variabelen in het Bindings palet. ............................................................170 8.10 Overige collecties, methoden en eigenschappen.................................171 8.11 Bronnen. ...............................................................................................172
9 Server behaviors. ................................................................................173 9.1 Een Server Behavior zonder parameters aanmaken. ............................174 9.2 Een Server Behavior met parameters aanmaken. .................................176 9.3 Toepassing 1. .........................................................................................180 9.4 Een Server Behavior bewerken en/of wissen.........................................183 9.5 Uw persoonlijke Server Behavior verspreiden. ......................................184 9.5.1 BewaarCookie.mxi.......................................................................186 9.5.2 Bewaar cookie.htm ......................................................................188 9.5.3 Bewaar cookie.edml. ...................................................................189 9.5.4 Bewaar cookie_block1.edml. .......................................................190 9.5.5 BewaarCookie.mxp-bestand aanmaken......................................190 9.5.6 BewaarCookie.mxp installeren. ...................................................191 9.5.7 BewaarCookie.mxp verspreiden..................................................192 9.5.8 Samenvatting...............................................................................193 9.6 Extra Server Behaviors downloaden en installeren................................194 9.7 Bronnen..................................................................................................194
10 Microsoft Access. .............................................................................195 10.1 Tabellen. ...............................................................................................196 10.2 Primaire sleutel.....................................................................................197 10.3 Database normalisatie..........................................................................198 10.4 Externe of secundaire sleutel. ..............................................................199 10.5 Referentiële integriteit. .........................................................................199 10.6 Kolommen indexeren. ..........................................................................199 10.7 Praktische realisatie. ............................................................................200 10.7.1 Auteurstabel toevoegen. ............................................................203 10.7.2 Gegevens importeren. ...............................................................205 10.7.3 Relaties leggen tussen tblBoeken en tblAuteurs. ......................208 10.7.4 Logintabel toevoegen.................................................................211 10.7.5 Indexen toevoegen. ...................................................................212 10.8 Database comprimeren. .......................................................................213 10.9 Uw database beveiligen. ......................................................................214 10.9.1 Paswoord toekennen. ................................................................214 10.9.2 Paswoord wissen.......................................................................215 10.10 Besluit.................................................................................................215 10.11 Bronnen. .............................................................................................216
6 - Dreamweaver MX - ASP
11 Een databasekoppeling maken........................................................217 11.1 Virtuele map toevoegen aan de testserver. ..........................................217 11.2 Nieuwe website definiëren in Dreamweaver.........................................218 11.3 MDAC. ..................................................................................................221 11.3.1 MDAC-versie controleren...........................................................222 11.3.2 ADO-versie controleren via ASP.................................................222 11.4 Soorten databasekoppelingen. .............................................................223 11.5 Database beveiligen tegen downloaden...............................................225 11.6 Koppeling via ODBC met DSN. ............................................................226 11.6.1 U gebruikt een lokale testserver.................................................226 11.6.2 U gebruikt een externe testserver. .............................................229 11.6.3 Databasekoppeling op de live server. ........................................230 11.7 Koppeling via ODBC zonder DSN (DSN-less connectie). ....................231 11.7.1 Connectiestring op de testserver (lokaal of extern) . .................232 11.7.2 Databasekoppeling op de live server. ........................................232 11.8 Koppeling via OLE DB. .........................................................................233 11.8.1 Connectiestring op de testserver (lokaal of extern) . .................234 11.8.2 Databasekoppeling op de live server. ........................................235 11.9 Besluit. ..................................................................................................236 11.10 Bronnen. .............................................................................................237
12 SQL.....................................................................................................239 12.1 Over de database.................................................................................240 12.2 Alle records uit een tabel tonen (SELECT)...........................................240 12.2.1 SQL-instructie. ...........................................................................240 12.2.2 In Dreamweaver.........................................................................241 12.3 Records sorteren (ORDER BY)............................................................244 12.3.1 SQL-instructie. ...........................................................................244 12.3.2 In Dreamweaver.........................................................................245 12.4 Specifieke kolommen uit een tabel selecteren. ....................................247 12.4.1 SQL-instructie. ...........................................................................247 12.4.2 In Dreamweaver.........................................................................247 12.5 Een recordset filteren op één criterium (WHERE)................................248 12.5.1 SQL-instructie. ...........................................................................248 12.5.2 In Dreamweaver.........................................................................249 12.6 Een recordset filteren via een zoekopdracht. .......................................250 12.7 Een recordset filteren op meerdere criteria. .........................................252 12.8 Gegevens aan de database toevoegen (INSERT). ..............................253 12.8.1 SQL-instructie. ...........................................................................253 12.8.2 In Dreamweaver.........................................................................254 12.9 Gegevens aanpassen (UPDATE).........................................................256 12.9.1 SQL-instructie. ...........................................................................256 12.9.2 In Dreamweaver.........................................................................257 12.10 Gegevens uit de database verwijderen (DELETE).............................260 12.10.1 SQL-instructie. .........................................................................260 12.10.2 In Dreamweaver.......................................................................260
Inhoud - 7
12.11 Gegevens uit twee tabellen samenvoegen (JOIN). ............................262 12.11.1 SQL-instructie. .........................................................................262 12.11.2 In Dreamweaver. ......................................................................263 12.11.3 Query's in Access.....................................................................264 12.11.4 In Dreamweaver. ......................................................................266 12.12 Besluit.................................................................................................267 12.13 Bronnen..............................................................................................268
13 Microsoft Access gegevenstypes. ..................................................269 13.1 Datumveld. ...........................................................................................270 13.1.1 Datum toevoegen. .....................................................................270 13.1.2 Datum formatteren.....................................................................274 13.2 Ja/nee-veld...........................................................................................276 13.3 Memoveld. ............................................................................................278 13.4 Besluit...................................................................................................281
14 Webapplicatie: boekengids..............................................................283 14.1 Een databasekoppeling maken. ...........................................................283 14.2 De database boekengids.mdb..............................................................284 14.3 De templates. .......................................................................................285 14.4 Het global.asa bestand.........................................................................285 14.5 Live Data View......................................................................................287 14.6 Het publieke gedeelte van de website..................................................287 14.6.1 Overzichtspagina boeken (default.asp). ....................................288 14.6.2 Detailpagina boeken (detail.asp). ..............................................297 14.7 Het administratieve gedeelte van de website.......................................304 14.7.1 Overzichtspagina (default.asp). .................................................305 14.7.2 Een nieuwe auteur toevoegen (auteurs/default.asp). ................305 14.7.3 Een auteur bewerken (auteurs/bewerk.asp)..............................308 14.7.4 Een auteur wissen (auteurs/wis.asp).........................................310 14.7.5 Een nieuw boek toevoegen (boeken/default.asp)......................312 14.7.6 Een boek bewerken (boeken/bewerk.asp). ...............................316 14.7.7 Een boek wissen (boeken/wis.asp). ..........................................320 14.7.8 De loginpagina (admin/login.asp). .............................................322 14.7.9 Pagina's beveiligen. ...................................................................325 14.8 Logout (logout.asp). .............................................................................326 14.9 Extra functionaliteit toevoegen. ............................................................327
8 - Dreamweaver MX - ASP
15 Mailcomponenten..............................................................................329 15.1 Virtuele map toevoegen aan de testserver. ..........................................330 15.2 Nieuwe website definiëren in Dreamweaver. .......................................330 15.3 SMTP-Server. .......................................................................................333 15.3.1 Open relay. ................................................................................334 15.3.2 Relay. .........................................................................................334 15.3.3 Authenticated Relay. ..................................................................336 15.3.4 SMTP-server van uw Internet provider. .....................................337 15.3.5 Besluit. .......................................................................................339 15.4 Geïnstalleerde mailcomponenten controleren......................................340 15.5 JMail. ....................................................................................................341 15.5.1 Instantie. ....................................................................................341 15.5.2 Eenvoudig mailscript..................................................................342 15.5.3 CC en BCC. ...............................................................................343 15.5.4 Foutboodschap weergeven. ......................................................344 15.5.5 Prioriteit toekennen....................................................................344 15.5.6 Opdracht 1. ................................................................................345 15.5.7 Bijlage toevoegen. .....................................................................345 15.5.8 Tekst - HTML. ............................................................................346 15.5.9 Verificatie op de SMTP-server. ..................................................348 15.5.10 Opdracht 2. ..............................................................................348 15.6 Gegevens verzenden via een formulier................................................349 15.7 ASPEmail. ............................................................................................350 15.7.1 Instantie. ....................................................................................350 15.7.2 Eenvoudig mailscript..................................................................350 15.7.3 CC en BCC. ...............................................................................351 15.7.4 Foutboodschap weergeven. ......................................................351 15.7.5 Prioriteit toekennen....................................................................351 15.7.6 Bijlage toevoegen. .....................................................................352 15.7.7 Tekst - HTML. ............................................................................352 15.7.8 Verificatie op de SMTP-server. ..................................................352 15.7.9 Opdracht 3. ................................................................................352 15.8 CDONTS. .............................................................................................353 15.8.1 Instantie. ....................................................................................353 15.8.2 Eenvoudig mailscript..................................................................353 15.8.3 CC en BCC. ...............................................................................354 15.8.4 Foutboodschap weergeven. ......................................................354 15.8.5 Prioriteit toekennen....................................................................354 15.8.6 Bijlage toevoegen. .....................................................................355 15.8.7 Tekst - HTML. ............................................................................355 15.8.8 Verificatie op de SMTP-server. ..................................................355 15.8.9 Opdracht 4. ................................................................................355 15.9 E-mail snippets. ....................................................................................356 15.10 Formprocessor. ..................................................................................356 15.11 Uw lokale SMTP-server. .....................................................................359 15.12 Bronnen..............................................................................................362
Inhoud - 9
16 Webapplicatie: mailinglijst. ..............................................................363 16.1 De databasekoppeling aanpassen. ......................................................364 16.2 De database mailing.mdb.....................................................................364 16.3 De templates. .......................................................................................365 16.4 Het include bestand (mailscript.asp). ...................................................365 16.5 Het publieke gedeelte van de site. .......................................................368 16.5.1 Registratie nieuwe gebruiker (subscribe.asp)............................368 16.5.2 Verzend registratie (subscribeZend.asp). ..................................370 16.5.3 Bevestiging nieuwe gebruiker (subscribeBevestig.asp). ...........374 16.5.4 Gebruiker uitschrijven (unsubscribe.asp) ..................................374 16.5.5 Gebruiker wissen uit de database (unsubscribeWis.asp)..........375 16.6 Het administratieve gedeelte van de site. ............................................376 16.6.1 Overzichtspagina (admin/default.asp). ......................................377 16.6.2 Overzicht actieve gebruikers (admin/actief.asp)........................377 16.6.3 Gebruikers wissen (admin/wis.asp). .........................................381 16.6.4 Overzicht niet-actieve gebruikers (admin/nietActief.asp)..........382 16.6.5 Mailing aanmaken (admin/mailing.asp). ....................................382 16.6.6 Mailing verzenden (admin/zenden.asp).....................................383 16.6.7 Loginpagina (admin/login.asp)...................................................386 16.6.8 Pagina's beveiligen. ...................................................................387 16.6.9 Logoutpagina (admin/logout.asp). .............................................388 16.7 Mogelijke uitbreidingen.........................................................................388
17 Webapplicatie: opleidingscentrum..................................................389 17.1 Virtuele map toevoegen aan de testserver. ..........................................389 17.2 Nieuwe website definiëren in Dreamweaver. .......................................390 17.3 Een databasekoppeling maken. ...........................................................393 17.4 De database opleiding.mdb..................................................................394 17.5 De templates. .......................................................................................395 17.6 De helppagina. .....................................................................................395 17.7 Opleidingen. .........................................................................................396 17.7.1 Overzichtspagina opleidingen (default.asp)...............................396 17.7.2 Detailpagina opleidingen (detail.asp).........................................407 17.7.3 Inschrijvingsformulier (inschrijven.asp). .....................................411 17.7.4 Formulier verzenden (zendEmail.asp).......................................413 17.8 Logout. .................................................................................................415 17.9 Docenten. .............................................................................................416 17.9.1 Loginpagina voor docenten (login.asp)......................................416 17.9.2 Cookie bewaren (setCookie.asp)...............................................420 17.9.3 Persoonlijke gegevens van een docent (default.asp). ...............421 17.9.4 Logingegevens verzenden via e-mail (zendPaswoord.asp). .....426
10 - Dreamweaver MX - ASP
17.10 Personeel. ..........................................................................................428 17.10.1 Loginpagina voor personeelsleden (login.asp). .......................428 17.10.2 Overzichtpagina voor personeelsleden (default.asp). .............430 17.10.3 Overzichtpagina opleidingen (opleidingen/default.asp). ..........433 17.10.4 Een opleiding bewerken of wissen (opleidingen/bewerk.asp). 434 17.10.5 Een nieuwe opleiding toevoegen (opleidingen/nieuw.asp). .....439 17.10.6 Een docent bewerken of wissen (docent/bewerk.asp). ...........442 17.10.7 Een nieuwe docent toevoegen (docent/nieuw.asp). ................446 17.11 Opdracht. ............................................................................................447
Index........................................................................................................449
Inhoud - 11