Richard Beer, Susann Gailus Adobe Dreamweaver CS4 Das umfassende Handbuch
Auf einen Blick TEIL I Grundlagen 1 Einleitung... 27 2 Projektablauf für die Buchwebsite... 35 3 Programmgrundlagen... 43 4 Dreamweaver erweitern... 83 TEIL II Statische Websites 5 Eine Site erstellen... 91 6 Grundlegende Dokumenteinstellungen... 117 7 Tabellen in Dreamweaver... 127 8 Bilder im Web... 145 9 Framesets... 163 10 Verhalten... 177 11 CSS in Dreamweaver... 187 12 Spry Framework für Ajax... 251 13 Spry-Widgets... 255 14 Hyperlinks... 267 15 Vorlagen und Bibliotheken... 275 16 Formulare... 293 17 Quelltext de luxe... 321 18 Dreamweaver und Flash... 337 19 Office-Dateien einfügen... 345 TEIL III Dynamische Websites 20 Dynamische Websites Einführung... 351 21 Einführung in PHP... 363 22 Lokalen Webserver installieren... 383 23 Dynamische Sites in Dreamweaver einrichten... 413 24 MySQL-Grundlagen... 421 25 Datenbanken mit Dreamweaver anbinden... 449 26 PHP und Dreamweaver... 457 27 Datenbanken abfragen... 467 28 Daten einfügen und dynamische Formulare... 543 29 Datensätze bearbeiten... 553 30 Benutzer authentifizieren und Zugriffsrechte festlegen... 575 31 Fortgeschrittene Techniken... 589 32 Menüs für dynamische Verhalten... 621 33 Dreamweaver und XML... 629 34 Spry und XML... 657
Inhalt Vorwort... 23 TEIL I Grundlagen 1 Einleitung... 27 1.1 Für die Leser... 27 1.1.1 An wen richtet sich dieses Buch?... 27 1.1.2 Welche Vorkenntnisse benötigen Sie?... 27 1.1.3 Warum wir in diesem Buch auf dem PC arbeiten... 28 1.2 Was ist Dreamweaver und was nicht?... 29 1.2.1 Keine HTML-Kenntnisse erforderlich?... 30 1.2.2 Anforderungen an einen professionellen HTML-Generator... 30 1.2.3 Warum Dreamweaver?... 31 1.2.4 Grenzen von Dreamweaver... 32 1.2.5 Systemanforderungen von Dreamweaver CS4... 32 1.3 Was ist neu in Dreamweaver CS4?... 33 2 Projektablauf für die Buchwebsite... 35 2.1 Briefing... 36 2.2 Arbeitsablauf... 38 2.3 Das Layout... 39 2.3.1 Entwurf in Photoshop... 40 2.3.2 Dreamweaver und Fireworks... 41 3 Programmgrundlagen... 43 3.1 Die Programmoberfläche... 44 3.1.1 Verschiedene Anzeigemöglichkeiten... 44 3.1.2 Anpassen der Bedienfeldgruppen... 47 3.1.3 Platz zum Arbeiten schaffen... 47 3.1.4 Einfügeleiste anpassen... 48 3.1.5 Das Dateifenster... 49 3.1.6 Verschiedene Dokumentansichten... 50 3.1.7 Die Entwurfsansicht... 51 3.1.8 Die Codeansicht... 54 3.1.9 Live-Ansicht... 55 5
Inhalt 3.1.10 Ansicht im Testserverbetrieb: Live-Ansicht... 56 3.1.11 Live-Code... 56 3.1.12 Code einfrieren... 57 3.1.13 Code-Navigator... 58 3.1.14 Abhängige Dateien... 58 3.1.15 Mit mehren Dokumenten arbeiten... 59 3.1.16 Codeteilung... 60 3.2 Wichtige Voreinstellungen... 60 3.2.1 Allgemeine Voreinstellungen... 60 3.2.2 AP-Elemente (bis Version 8.0: Layer)... 61 3.2.3 Codeformat einstellen... 62 3.2.4 Codehinweise... 63 3.2.5 Codeumschreibung... 64 3.2.6 CSS-Stile... 65 3.2.7 Dateien vergleichen... 66 3.2.8 Dateitypen/Editoren... 67 3.2.9 Eingabehilfen... 68 3.2.10 Farbe für Code... 69 3.2.11 Kopieren und Einfügen (Office)... 69 3.2.12 Markierung... 69 3.2.13 Neues Dokument... 70 3.2.14 Site... 73 3.2.15 Statusleiste... 73 3.2.16 Unsichtbare Elemente... 73 3.2.17 Validator... 74 3.2.18 Vorschau im Browser... 75 3.2.19 Prüfung auf externen Rechnern... 77 3.3 Layouthilfen in Dreamweaver... 78 3.3.1 Raster einstellen und anzeigen... 78 3.3.2 Hilfslinien... 78 3.3.3 Die Statusleiste... 80 3.3.4 Tracing-Bilder... 82 4 Dreamweaver erweitern... 83 4.1 Befehle speichern... 83 4.2 Extensions einsetzen... 84 4.2.1 Bezugsquellen... 84 4.2.2 Extension Manager... 85 6
Inhalt TEIL II Statische Websites 5 Eine Site erstellen... 91 5.1 Die Struktur... 91 5.1.1 Pfadangaben... 91 5.1.2 Ordnerstruktur... 93 5.2 Die Site-Verwaltung... 95 5.2.1 Regeln beim Arbeiten mit einer Site... 95 5.2.2 Site-Definition... 96 5.2.3 FTP-Zugang einrichten... 99 5.2.4 Eine Alternative zu FTP... 101 5.2.5 Testserver... 102 5.2.6 Versionskontrolle... 102 5.2.7 Cloaking... 102 5.2.8 Design Notes... 103 5.2.9 Dateiansichtsspalten... 104 5.2.10 Weitere Einstellungen... 104 5.2.11 Import und Export von Sites... 104 5.2.12 Fehlerquellen in der Site-Verwaltung... 105 5.2.13 Die Site-Ansicht... 105 5.2.14 Synchronisieren und Vergleichen von Dateien... 106 5.2.15 Mit der Dateiverwaltung arbeiten... 108 5.3 Gruppenarbeit... 109 5.3.1 Remote-Zugriff einstellen... 110 5.3.2 Mit der Gruppenfunktion arbeiten... 112 5.4 Die Buchwebsite anlegen... 114 6 Grundlegende Dokumenteinstellungen... 117 6.1 Seiteneigenschaften festlegen... 117 6.2 Seiteneigenschaften festlegen ohne CSS... 118 6.3 Seiteneigenschaften festlegen mit CSS... 120 6.3.1 Verknüpfungen & Überschriften... 121 6.3.2 Titel/Codierung... 122 6.3.3 Tracing-Bild warum und wann?... 123 6.3.4 Metaangaben... 124 6.3.5 Layouttricks mit Hintergrundbildern... 125 6.4 Dokumenteinstellungen für die Buchwebsite... 126 7
Inhalt 7 Tabellen in Dreamweaver... 127 7.1 Einfügen von Tabellen... 128 7.1.1 Hilfsmittel für Tabellen... 129 7.1.2 Arbeiten im erweiterten Tabellenmodus... 129 7.2 Tabelleneigenschaften einstellen... 130 7.2.1 Zelleneigenschaften einstellen... 132 7.2.2 Fehler vermeiden... 132 7.3 Verschachtelte Tabellen... 133 7.3.1 Was ist 100 %... 135 7.3.2 Der Trick mit den transparenten GIFs... 135 7.3.3 Tabellenumrandungen erstellen... 136 7.4 Zentrieren mit Tabellen... 137 7.5 Aufbau der Tabellen für die Buchwebsite... 138 8 Bilder im Web... 145 8.1 Bildformate bestimmen... 145 8.1.1 JPEG... 145 8.1.2 GIF... 146 8.1.3 PNG... 146 8.1.4 Flash... 147 8.2 Bilder einfügen und bearbeiten... 148 8.2.1 Das Bedienfeld Elemente... 148 8.2.2 Bilder in Dreamweaver bearbeiten... 152 8.2.3 Bild von Text umfließen lassen... 154 8.2.4 Image Maps und Hotspots... 154 8.2.5 Platzhalterbilder... 156 8.3 Interaktion mit Photoshop... 157 9 Framesets... 163 9.1 Funktionsweise von Frames... 163 9.1.1 Gestalten mit Framesets... 164 9.1.2 Suchmaschinen und Framesets... 165 9.2 Ein Frameset anlegen... 166 9.3 Mit Framesets arbeiten... 169 9.3.1 Framesets nachbearbeiten... 170 9.3.2 Verlinkungen in Framesets... 170 9.3.3 Mehrere Frames gleichzeitig neu laden... 170 9.3.4 Eingebettete Frames (<iframe>)... 172 9.4 Anlegen des Framesets für die Buchwebsite... 174 8
Inhalt 10 Verhalten... 177 10.1 JavaScript in Dreamweaver... 177 10.2 Verhalten... 178 10.2.1 Rollover erstellen... 180 10.2.2 Plug-ins überprüfen... 183 10.2.3 Mehrere Frames gleichzeitig austauschen... 184 10.2.4 JavaScript-Effekte... 185 10.3 Erstellen der Rollover-Effekte auf der Buchwebsite... 186 11 CSS in Dreamweaver... 187 11.1 Ein wenig Theorie zum Einstieg... 187 11.2 CSS-Voreinstellungen... 188 11.3 CSS-Werkzeuge auf einen Blick... 188 11.3.1 Medientypen... 188 11.3.2 Layout-Hilfsmittel... 189 11.4 Vorgehensweise und Regeln... 191 11.5 Arten von CSS-Stilen... 192 11.5.1 Interne CSS-Stile... 192 11.5.2 Externe CSS-Stile... 194 11.5.3 CSS-Syntax... 194 11.6 Selektor-Typen... 195 11.6.1 Klassen-Selektoren... 195 11.6.2 Tag-Selektoren... 196 11.6.3 Kontext-Selektoren... 196 11.6.4 ID-Selektoren... 197 11.7 Erstellen und Bearbeiten von CSS-Stilen... 197 11.7.1 Das CSS-Bedienfeld... 198 11.7.2 Neue CSS-Regeln erstellen... 199 11.7.3 CSS-Regeln bearbeiten... 200 11.7.4 CSS-Bearbeitung voreinstellen... 201 11.7.5 CSS-Regeln für Texte... 202 11.7.6 Zuweisen von CSS in der Eigenschaftenpalette... 203 11.7.7 Verknüpfen externer CSS-Dateien... 204 11.7.8 CSS-Regeln für unterschiedliche Ausgabemedien... 205 11.8 Besondere CSS-Anwendungen... 206 11.9 CSS-Layout ohne Tabellen... 207 11.9.1 CSS für barrierefreies Webdesign... 208 11.9.2 Das CSS-Boxmodell... 208 11.9.3 DOC-Type immer angeben... 209 11.9.4 CSS-Stile und DIV-Tags... 210 9
Inhalt 11.10 AP-Elemente... 216 11.10.1 AP-Elemente erstellen und einstellen... 216 11.10.2 Erweiterte Einstellungen für AP-Elemente... 223 11.10.3 AP-Elemente in Tabellen umwandeln... 227 11.10.4 AP-Elemente und JavaScript... 229 11.11 CSS-Regeln für die Buchwebsite erstellen... 230 11.12 Aufbau der Buchwebsite mit CSS- und AP-Elementen... 238 12 Spry Framework für Ajax... 251 12.1 Was ist Spry?... 251 12.1.1 Vorteile... 252 12.1.2 Einschränkungen... 253 12.2 Spry in diesem Buch... 253 13 Spry-Widgets... 255 13.1 Spry-Menüleiste... 257 13.1.1 Spry-Menüleiste anlegen... 257 13.1.2 Spry-Menüleiste anpassen... 258 13.2 Spry-Palette mit Registerkarten... 259 13.2.1 Spry-Registerkarten einstellen... 260 13.2.2 Spry-Registerkarten füllen... 260 13.3 Spry-Akkordeon... 261 13.4 Spry Reduzierbare Palette... 263 13.5 Spry-Widgets mit CSS gestalten... 264 14 Hyperlinks... 267 14.1 Verknüpfungen einbauen... 267 14.2 Ziel angeben... 268 14.3 Hyperlinks prüfen... 269 14.4 Anker hinzufügen... 269 14.5 Hyperlink-Methoden... 270 14.6 Hyperlinks auf E-Mail-Adressen... 271 14.7 Platzhalter für Hyperlinks... 272 15 Vorlagen und Bibliotheken... 275 15.1 Mit Vorlagen arbeiten... 275 15.1.1 Vorlagen erstellen... 276 15.1.2 Bearbeitbare Bereiche festlegen... 278 15.1.3 Dokument aus Vorlage erstellen... 278 15.1.4 Vorlagen entfernen... 279 10
Inhalt 15.1.5 Vorlagen aktualisieren... 281 15.2 Tricks mit Vorlagen... 281 15.2.1 Verschachtelte Vorlagen... 281 15.2.2 Wiederholte Bereiche... 281 15.2.3 Wiederholte Tabelle... 282 15.3 Mit Bibliotheken arbeiten... 282 15.4 Anlegen der Sitestruktur und der Navigation für die Buchwebsite... 285 16 Formulare... 293 16.1 Übertragungsmethoden für Formulardaten... 293 16.1.1 GET... 293 16.1.2 POST... 294 16.1.3 Formulare per E-Mail... 294 16.2 Ein Formular erstellen... 294 16.3 Formularelemente... 296 16.3.1 Variablenvergabe... 296 16.3.2 Textfelder... 297 16.3.3 Versteckte Textfelder... 297 16.3.4 Textbereiche... 299 16.3.5 Kontrollkästchen... 299 16.3.6 Optionsschalter... 301 16.3.7 Auswahllisten und Sprungmenüs... 301 16.3.8 Dateifelder... 302 16.3.9 Schaltflächen... 303 16.4 Formulare überprüfen... 304 16.5 Spry für Formulare... 304 16.5.1 Spry-Überprüfung Textfeld... 305 16.5.2 Spry-Überprüfung Textbereich... 311 16.5.3 Spry-Überprüfung Auswahl... 312 16.5.4 Spry-Überprüfung Kennwort... 313 16.5.5 Spry-Überprüfung Bestätigung... 314 16.6 Formulare gestalten... 315 16.6.1 Formulare mit Tabellen gestalten... 315 16.6.2 Formularelemente mit CSS gestalten... 315 16.7 Ein Kontaktformular für die Buchwebsite... 317 17 Quelltext de luxe... 321 17.1 Arbeiten im Quelltext... 321 17.1.1 Quellcode formatieren... 321 17.1.2 Codeansichtsoptionen... 322 11
Inhalt 17.1.3 Code übersichtlich halten... 324 17.1.4 Code halbautomatisch erstellen... 325 17.1.5 Kommentare... 326 17.2 Codefragmente (Snippets) einsetzen... 326 17.2.1 Codefragmente mit Kollegen teilen... 328 17.2.2 Tag-Inspektor... 329 17.2.3 Eigene Tag-Vorgaben oder -Bibliotheken... 329 17.3 Quelltext in der Entwurfsansicht bearbeiten... 332 17.4 Quelltext automatisch optimieren... 332 17.5 Suchen und ersetzen... 333 18 Dreamweaver und Flash... 337 18.1 Flash einsetzen oder nicht?... 337 18.2 Flash einfügen... 338 18.2.1 Filme einbinden... 338 18.2.2 Eigenschaften einstellen... 340 18.3 Möglichkeiten im Zusammenspiel mit Flash... 341 18.3.1 Sound mit Flash... 341 18.3.2 Flash mit Aktionen steuern... 342 18.3.3 Flash in Dreamweaver öffnen... 342 19 Office-Dateien einfügen... 345 19.1 Word-Texte einfügen... 345 19.2 Excel-Tabellen einfügen... 346 19.3 CSV-Daten importieren... 346 19.4 Weitere Einfügemöglichkeiten... 347 TEIL III Dynamische Websites 20 Dynamische Websites Einführung... 351 20.1 Vorteile dynamischer Sites... 351 20.1.1 Statische versus dynamische Sites... 352 20.1.2 Dynamische Sites und Suchmaschinen... 352 20.1.3 Dynamische Sites und Sessions... 352 20.2 Typen dynamischer Websites... 353 20.2.1 Web-Content-Management-lSysteme (WCMS)... 353 20.2.2 Content-Management-Systeme (CMS)... 354 20.2.3 Redaktionssysteme... 354 20.2.4 Shopsysteme... 354 12
Inhalt 20.2.5 Foren... 354 20.2.6 Portale... 355 20.2.7 Personalisierte Websites... 355 20.2.8 Weblogs... 356 20.3 Client- und serverseitiges Skripting... 357 20.4 Konzeption dynamischer Sites... 359 20.4.1 Besonderheiten für das Layout... 360 20.4.2 Trennung von Layout und Inhalt... 361 20.4.3 Konzeption der Administrationsebene... 361 20.4.4 Planung, Planung, Planung... 362 21 Einführung in PHP... 363 21.1 Was ist PHP?... 363 21.1.1»Hallo Welt«in PHP... 364 21.1.2 Vorteile von PHP... 366 21.2 PHP und HTML... 366 21.2.1 PHP in HTML einbinden... 366 21.2.2 Schreibweise von Zahlen und Zeichen... 367 21.2.3 HTML in PHP einbinden... 368 21.3 Variablen in PHP... 369 21.4 Vergleichsoperatoren... 371 21.5 Boolesche Operatoren... 372 21.6 Schleifen programmieren... 372 21.6.1 for-schleifen... 373 21.6.2 while-schleifen... 374 21.6.3 do-while-schleifen... 374 21.6.4 foreach-schleifen... 375 21.7 Bedingungen mit PHP... 375 21.7.1 if-anweisung... 376 21.7.2 if-else-anweisung... 376 21.7.3 switch-anweisung... 377 21.8 Dateien einbinden... 377 21.8.1 Mit MySQL verbinden... 379 21.8.2 MySQL-Datenbanken abfragen... 379 21.9 Mit Sessions arbeiten... 380 21.10 Fazit... 381 22 Lokalen Webserver installieren... 383 22.1 Webserver-Grundlagen... 383 22.2 Vorbereitung: Firewall einstellen oder ausschalten... 385 13
Inhalt 22.3 WAMP installieren... 386 22.3.1 XAMPP testen und konfigurieren... 389 22.3.2 Eigene Serverroot angeben... 391 22.3.3 phpmyadmin in die Serverroot legen... 392 22.3.4 MySQL... 394 22.4 Internet Information Server als Alternative installieren... 395 22.4.1 IIS verwalten... 398 22.4.2 PHP auf IIS installieren... 398 22.4.3 MySQL unter IIS installieren... 403 22.4.4 phpmyadmin unter IIS installieren... 403 22.4.5 Installation des IIS 7 und PHP unter Windows Vista Business 404 23 Dynamische Sites in Dreamweaver einrichten... 413 23.1 Testserver-Einstellungen... 413 23.2 Site-Einstellungen testen... 415 23.3 Buchwebsite für dynamische Inhalte einrichten... 418 24 MySQL-Grundlagen... 421 24.1 Einführung in Datenbanken... 421 24.1.1 Relationale Datenbanken... 422 24.1.2 Relationstypen... 424 24.1.3 Primärschlüssel... 424 24.1.4 Redundanzfreiheit... 424 24.1.5 Prozessdatenfreiheit... 425 24.1.6 Fremdschlüssel... 425 24.1.7 Referenzielle Integrität... 425 24.1.8 Endlosschleifen... 426 24.1.9 MySQL-Datentypen... 426 24.2 Erstellen einer MySQL-Datenbank... 428 24.2.1 MySQL-Datenbank mit phpmyadmin anlegen... 428 24.2.2 Einfügen von Datensätzen... 432 24.2.3 Import von Daten... 432 24.2.4 Export von Daten zum Provider... 433 24.3 MySQL und Microsoft Access... 434 24.4 Benutzerverwaltung mit MySQL... 438 24.5 Einführung in SQL... 441 24.5.1 Daten abfragen mit SELECT... 442 24.5.2 Datensatz abfragen mit WHERE... 442 24.5.3 Daten sortieren mit ORDER BY... 443 24.5.4 Datensatz aktualisieren mit UPDATE... 443 14
Inhalt 24.5.5 Datensatz löschen mit DELETE... 443 24.5.6 Datensatz einfügen mit INSERT... 443 24.6 Datenstruktur der Buchwebsite... 444 24.6.1 Datenstruktur der Website... 444 24.6.2 Primärschlüssel festlegen... 445 25 Datenbanken mit Dreamweaver anbinden... 449 25.1 Datenbanken konnektieren... 449 25.2 Konnektierung von MySQL mit PHP... 450 25.2.1 Bedienfeldgruppe Anwendung... 450 25.2.2 Das Bedienfeld Datenbanken... 453 26 PHP und Dreamweaver... 457 26.1 Variablen in Dreamweaver... 458 26.1.1 Variablen senden... 458 26.1.2 Mit Variablen arbeiten... 459 26.2 PHP einfügen in Dreamweaver... 461 26.2.1 PHP-Befehle einsetzen... 461 26.2.2 PHP-Referenz... 462 26.2.3 PHP von Hand coden... 462 26.3 Fehlersuche mit PHP... 463 26.3.1 Fehlermeldungen anzeigen... 463 26.3.2 Externe Variablen anzeigen... 464 26.3.3 Häufige PHP-Fehlerquellen... 465 27 Datenbanken abfragen... 467 27.1 Das Bedienfeld Bindungen... 467 27.2 Datensätze in Dreamweaver abfragen... 469 27.2.1 Einfache Abfragen erstellen... 469 27.2.2 Anzeigen von Datensätzen... 474 27.2.3 Formatieren in der Live-Ansicht... 475 27.2.4 Erweiterte Abfragen erstellen... 476 27.2.5 Mehrere Datensätze abfragen... 479 27.2.6 Bestimmte Datensätze abfragen... 481 27.2.7 Datensatz-ID mit URL übergeben... 483 27.2.8 Einstellbare Variablentypen... 487 27.2.9 Testen der Abfragen... 488 27.3 Dynamische Tabellen... 489 27.3.1 Erstellen einer dynamischen Tabelle... 489 15
Inhalt 27.3.2 Dynamische Tabelle mit Serververhalten... 490 27.4 Wiederholte Bereiche mit AP-Elementen... 492 27.5 Bilder dynamisch einfügen... 496 27.5.1 Bilder aus Datenbanken verlinken... 496 27.5.2 Vorbereitungen für dynamisch eingefügte Bilder... 500 27.6 In Datensätzen navigieren... 501 27.6.1 Datensatznavigation erstellen... 501 27.6.2 Bereiche in Abhängigkeit von Daten anzeigen... 503 27.6.3 Datensatzanzahl anzeigen... 506 27.6.4 Individuelle Datensatznavigationen erstellen... 507 27.7 HTML-Attribute dynamisch generieren... 507 27.7.1 Eigenschaften aus Datenquellen einfügen... 507 27.7.2 Daten in der URL mit Hyperlinks übergeben... 513 27.8 Automatische Master- und Detailseiten... 515 27.9 Ausgabe formatieren... 517 27.10 Aufbau der dynamischen Inhalte der Buchwebsite... 519 27.10.1 Das Funktionsschema... 519 27.10.2 Die Masterseite... 520 27.10.3 Die Detailseiten... 522 27.10.4 Anlegen der Abfragen... 523 27.10.5 URL-Parameter übergeben... 525 27.10.6 Datensatznavigation erstellen... 526 27.10.7 Aufbau des CSS-Layouts... 537 28 Daten einfügen und dynamische Formulare... 543 28.1 Neue Datensätze einfügen... 544 28.1.1 Der Assistent für Einfügeformulare... 544 28.1.2 Eigene Einfügeformulare verwenden... 547 28.2 Bestehende Datensätze manipulieren... 547 28.2.1 Ein Änderungsformular erstellen... 547 28.2.2 Andere Möglichkeiten... 548 28.2.3 Dynamische Auswahlliste erstellen... 549 28.2.4 Dynamische Kontrollkästchen (Checkboxen)... 550 29 Datensätze bearbeiten... 553 29.1 Datensätze verändern... 553 29.1.1 Ein Änderungsformular erstellen... 553 29.1.2 Datensatznavigation für Datensatzänderungen... 555 29.1.3 Datensatznavigation mit zwei Dokumenten und Auswahlseiten... 556 16
Inhalt 29.2 Datensätze löschen... 559 29.3 Daten aus mehreren Tabellen verbinden... 560 29.4 Administrationsebene für die Buchwebsite anlegen... 565 29.4.1 Frameset anlegen... 565 29.4.2 Auswahlseiten... 565 29.4.3 CSS für Administrationsebene anlegen... 567 30 Benutzer authentifizieren und Zugriffsrechte festlegen... 575 30.1 Benutzer verwalten... 575 30.1.1 Schema einer Benutzerauthentifizierung... 575 30.1.2 Tabelle für die Benutzerverwaltung... 575 30.1.3 Benutzer anmelden... 577 30.2 Zugriffsrechte beschränken... 579 30.3 Neue Benutzer anlegen... 580 30.4 Zugriffsrechte für die Website zum Buch... 586 31 Fortgeschrittene Techniken... 589 31.1 SQL-Abfragen... 589 31.1.1 Eigene SQL-Abfragen einbinden... 589 31.1.2 Abfragen verschachteln... 595 31.1.3 Eine Volltextsuche... 602 31.2 Arbeiten mit Sessions... 604 31.3 Serververhalten... 607 31.3.1 Eigene Serververhalten schreiben... 607 31.3.2 Positionierung im Code... 613 31.3.3 Bedingungen als Serververhalten anlegen... 614 31.3.4 Serververhalten anderen zur Verfügung stellen... 618 32 Menüs für dynamische Verhalten... 621 32.1 Dynamische Verhalten zuweisen... 621 32.1.1 Tabellendaten importieren... 621 32.1.2 Spry-XML-Datensatz... 621 32.1.3 Spry-Bereich... 621 32.1.4 Spry-Wiederholung... 622 32.1.5 Spry-Wiederholungsliste... 622 32.1.6 Datensatzgruppen... 622 32.1.7 Dynamische Daten... 622 32.1.8 Bereich wiederholen... 623 17
Inhalt 32.1.9 Bereich anzeigen... 623 32.1.10 Seitenerstellung für Datensatzgruppe... 624 32.1.11 Datensatzgruppen-Navigationsstatus... 625 32.1.12 Master-Detaildatensatz... 625 32.1.13 Datensatz einfügen... 626 32.1.14 Datensatz aktualisieren... 626 32.1.15 Datensatz löschen... 627 32.1.16 Benutzerauthentifizierung... 627 32.1.17 XSL-Transformation... 628 33 Dreamweaver und XML... 629 33.1 Einführung in XML... 629 33.2 XML und CSS... 632 33.3 XML-Attribute... 634 33.4 DTDs... 637 33.4.1 DTDs mit Dreamweaver entwickeln... 639 33.4.2 Externe DTDs... 640 33.4.3 Einbinden von DTDs in Dreamweaver... 641 33.5 XML, XSLT und CSS... 644 33.5.1 XSLT-Einführung... 644 33.5.2 RSS-Feed einbinden... 645 33.5.3 XSLT-Fragmente und ganze XSLT-Seiten... 646 33.5.4 Clientseitige XSLT-Transformation... 646 33.5.5 Serverseitige XSLT-Transformation mit PHP... 653 34 Spry und XML... 657 34.1 Was ist Ajax?... 657 34.2 XML-Daten anbinden... 657 34.3 Spry-Bereiche... 662 34.3.1 Spry-Wiederholungen... 665 34.3.2 Spry-Wiederholungsliste... 666 34.3.3 Spry-Tabelle... 667 34.4 Kritiken an Spry... 670 Die DVD zum Buch... 671 Index... 675 18
Workshops Grundlagen Eine Site anlegen... 114 Arbeiten mit Tabellen... 139 Einfügen von Bildern in die Buchwebsite... 160 Ein Frameset anlegen... 174 CSS in Dreamweaver So funktioniert CSS... 231 CSS- und AP-Elemente... 238 Vorlagen und Formulare Sitestruktur... 286 Ein Kontaktformular erstellen... 317 Lokalen Webserver installieren Eigenes Rootverzeichnis angeben... 392 IIS unter Windows XP oder 2000 installieren... 396 PHP auf IIS installieren... 399 IIS unter Windows Vista Business installieren... 404 PHP unter Windows Vista Business installieren... 408 Dateiendungen... 418 MySQL-Grundlagen MySQL-Tabellen an MS Access 2003 binden... 435 Die Datenbank-Struktur importieren... 446 Datenbanken mit Dreamweaver Datenbank an die Buchwebsite anbinden... 454 Grafische Auswertung einer Datentabelle mit PHP... 509 Abfrage anlegen und wiederholen... 523 URL-Parameter übergeben... 525 Eine Navigation aus einem Datensatz erstellen... 526 Aufbau der Detailseite... 531 AP-Elemente anlegen... 538 Datensätze bearbeiten Datensätze über eine Administrationsoberfläche ändern... 557 Aufbau der Administrationsebene... 568 19
Workshops Benutzer authentifizieren und Zugriffsrechte festlegen Ein Anmeldeformular für neue Benutzer erstellen... 581 Eine Datentabelle schützen... 586 Fortgeschrittene Techniken SQL-Abfragen einbinden... 592 Datenbankkonnektierung als Serververhalten speichern... 607 Eine DTD importieren... 641 20
Video-Lektionen Als Ergänzung zum Buch möchten wir Ihnen ausgewählte Lehrfilme aus dem Video- Training»Adobe Dreamweaver CS4 Das umfassende Training«von Tilo Rust (ISBN 978-3-8362-1279-3) zeigen. Neue Funktionen... Webdesign im Wandel... CSS-Formatierung Teil I... CSS-Formatierung Teil II... Schriften mit CSS formatieren... CSS-Klassen und externe Stylesheets... Zweispaltiges Layout mit CSS... Layoutvorlagen in Dreamweaver CS4... Spry-Menüs einfügen... Diashows erstellen... Suchmaschinenoptimierung... Rich Internet Applications mit Adobe AIR... (06:16 Min.) (08:02 Min.) (07:54 Min.) (08:60 Min.) (09:02 Min.) (06:11 Min.) (11:31 Min.) (06:37 Min.) (14:08 Min.) (12:20 Min.) (04:38 Min.) (06:43 Min.) 21
Kaum ein anderes Thema bietet so viel Diskussionsstoff unter Webdesignern. Wir zeigen Ihnen, wie Sie mit Dreamweaver Framesets sinnvoll einsetzen. 9 Framesets Framesets sind aus dem Internet nicht wegzudenken, und doch hört man viele verschiedene Meinungen zu diesem Thema. Die einen verteufeln Framesets als Überbleibsel prähistorischer HTML-Schreiberei, die anderen haben für sich darin die Lösung aller Probleme erkannt. Die Antwort liegt dazwischen. Framesets haben zwar durchaus Nachteile, allerdings auch Vorteile, die unserer Meinung nach schwerer wiegen, zumal die sogenannten Nachteile meist erst durch fehlerhaften Umgang mit Framesets entstehen. 9.1 Funktionsweise von Frames Frames teilen das Browserfenster in getrennte Bereiche auf, um gleichzeitig verschiedene Dokumente unabhängig voneinander darstellen zu können. Framesets bestehen aus einem Hauptdokument, das das Frameset beinhaltet, und den darin dargestellten Dokumenten. Daher besteht z. B. ein komplettes Frameset für drei gleichzeitig darzustellende Dokumente aus vier Dokumenten. Vorteile von Frames: Vielfältigere gestalterische Möglichkeiten Einfacheres Erstellen umfangreicher Navigationen Navigation und Kopf bleiben beim Scrollen an der gleichen Stelle erhalten Einbindung verschiedener Webserver in eine Website Nachteile von Frames: Benötigen JavaScript, um mehrere Frames gleichzeitig auszutauschen Kompliziertes Handling Werden von verschiedenen Browsern leicht unterschiedlich interpretiert 163
9 Framesets 9.1.1 Gestalten mit Framesets Mit Framesets lassen sich bildschirmfüllende Designs realisieren, die mit reiner Tabellendarstellung nicht erreichbar wären. Abbildung 9.1 Website eines Projekts mit Frames oben und unten In Abbildung 9.1 ist eine Website mit einem feststehenden Bereich oben und unten zu sehen. Der gesamte mittlere Bereich kann bei feststehender Navigation gescrollt werden. In Abbildung 9.2 sehen Sie ein verschachteltes Frameset, um die eigentliche Inhaltsseite in der Bildschirmmitte zu zentrieren. 164
Funktionsweise von Frames 9.1 1 Abbildung 9.2 Website mit zentrierten Frames Da in dieser Website mit Ebenen gearbeitet wird, ist eine Zentrierung mit Tabellen nicht möglich. Ebenen benötigen immer einen festen Bezugspunkt. Durch das Zentrieren verschiebt sich der Inhalt der Website im Browserfenster. Die an den Koordinaten des Browserfensters 1 orientierte Ebene würde jedoch bei einer Zentrierung mit Tabellen an einem festen Punkt stehen bleiben. Eine Zentrierung von Ebenen ist daher nur durch den Einsatz von Frames möglich. Durch Einsatz von Frames wird der Bezugspunkt des Inhaltsdokuments mit dem Inhalt der Website verschoben. Der Ebenenbezugspunkt ist damit unabhängig von der Browserfenstergröße und orientiert sich an der aktuellen Position des mittleren Framebereichs. Diese Art, Websites zu zentrieren, ist wesentlich effektiver als die Zentrierung mit Tabellen. 9.1.2 Suchmaschinen und Framesets Eines der Hauptargumente gegen Framesets ist die angeblich schlechte Indizierung in Suchmaschinen. Wir können dies aus der Praxis nicht bestätigen. Zumindest bei Google, der wohl aktuell wichtigsten Suchmaschine, trifft die Behauptung nicht zu. Natürlich muss man aber einige Besonderheiten beachten. 165
9 Framesets Metaangaben im noframes-bereich Eine Frameset-Datei ist eigentlich nur ein Verweis auf weitere Dokumente und Darstellungseinstellungen für den Browser. Das bedeutet, dass ein Frameset zunächst gar keine Inhalte hat, die eine Suchmaschine indizieren könnte, außer den hoffentlich vorhandenen Metaangaben. In einer Frameset-Datei ist ein Bereich vorhanden, der noch aus Zeiten stammt, als noch nicht alle Browser Frames darstellen konnten. In diesem <noframes>-bereich können Sie jede Menge Texte und Verweise verstecken. Diese werden von keinem aktuellen Browser angezeigt, von den Suchmaschinen jedoch sehr wohl als Inhalt erkannt. <noframes> <body> </body> </noframes> Listing 9.1 <noframes>-bereich eines Framesets Frameset nachladen Das bietet Ihnen natürlich Möglichkeiten, Ihre Seite genau und ausführlich zu beschreiben. Zusätzlich können Sie auf jede Ihrer Unterseiten verweisen und somit die Suchmaschine veranlassen, auch diese zu indizieren. Auf den Unterseiten sorgen Sie dann mit einem kleinen JavaScript dafür, dass das Frameset automatisch nachgeladen wird, wenn das Dokument direkt aufgerufen wird. <script> if (window.name!='mainframe') top.location.replace('name DES FRAMESETS?NAME DER DATEI~NAME DES FRAMES'); </script> Listing 9.2 JavaScript zum Nachladen des Framesets 9.2 Ein Frameset anlegen Der Aufbau eines Framesets mit Dreamweaver ist etwas gewöhnungsbedürftig, letztlich aber ganz einfach. Einzeldokumente anlegen Erstellen Sie vor dem Anlegen des Framesets die einzelnen darzustellenden Dokumente. In unserem Beispiel sind es a.htm, b.htm und c.htm. Diese Dokumente beinhalten in unserem Beispiel nichts außer jeweils einer anderen Hintergrund- 166
Ein Frameset anlegen 9.2 farbe. In der Praxis würde eins der Dokumente die Navigation, ein anderes die Headline mit Logo und das dritte die eigentlichen Inhalte enthalten. Die Dokumente dienen in unserem Fall nur der Veranschaulichung. Legen Sie ein neues leeres Dokument an, klicken Sie dann im Reiter Layout in der Einfügeleiste auf das Icon Frames und wählen Frames oben und links verschachtelt aus. Abbildung 9.3 Ein Frameset über das Auswahlmenü erstellen Die Frames werden im Dokument sichtbar. Jetzt aktivieren wir über Fenster Frames oder (Alt)+(F2) das Eigenschaftenfenster für Frames. Dateien zuweisen Klicken Sie in das Bedienfeld Frames, um den gewünschten Frame auszuwählen, und ziehen Sie mit der Maus den kleinen Kreis bei Quelle 1 im Eigenschaftenfenster auf die darzustellende Datei. Frame-Rahmen Stellen Sie bei allen Frames die Randbreite und die Randhöhe 2 auf 0, um eine einheitlich definierte Größe zu erhalten. Stellen Sie unter Rahmen 3 die Option Nein ein, denn in den meisten Fällen werden keine Frame-Rahmen benötigt. Frame-Rahmen werden in älteren Browsern häufig nicht korrekt dargestellt. Besonders auf dem Mac in älteren IE-Versionen zeigten sich häufig hässliche Frame- Rahmen. 167
9 Framesets 3 2 Abbildung 9.4 Einstellen des Framesets Automatische Scrollbalken Ganz wichtig ist die Einstellung Rollen 4. Hier legen Sie fest, ob ein Frame einen Inhalt scrollbar darstellen darf oder nicht. Für feste Bereiche wie Navigationen sollten Sie dies deaktivieren. Im Hauptfenster wird es jedoch meistens auf Auto gestellt. So erscheinen Scrollbalken nur dann, wenn sie auch benötigt werden. Frame-Namen Jeder einzelne Frame erhält einen eigenen Namen, in unserer Abbildung»left- Frame«5. Bedenken Sie, dass die von Dreamweaver vergebenen Standardnamen auf Tausenden von Websites vorkommen. Wenn Sie mehrere Browserfenster geöffnet haben und die Websites Frames beinhalten, kann es vorkommen, dass Inhalte in einem falschen Frame geöffnet werden. Vergeben Sie hier also nach Möglichkeit eindeutige und einmalige Namen. In unserem Beispiel haben wir die Standardbezeichnungen von Dreamweaver übernommen. Größe der Frames Nachdem die Dokumente den Frames zugewiesen wurden, müssen noch die richtige Breite und Höhe für die Frames eingestellt werden (Abbildung 9.5). Klicken Sie dazu direkt auf den Frame-Rahmen im Dokumentfenster 6. 168
Mit Framesets arbeiten 9.3 Auch hier setzen wir wieder die Rahmen auf Nein und die Rahmenbreite auf 0. Unter Wert 7 geben Sie jetzt die exakte Breite oder Höhe des Frames in Pixel oder in Prozent an. 6 5 7 Abbildung 9.5 Abmessungen einstellen Nachdem Sie alle Schritte durchgeführt haben, muss das Frameset noch abgespeichert werden. Klicken Sie dazu auf Datei Frameset speichern unter und speichern Sie das Frameset unter einem eigenen Namen ab. 9.3 Mit Framesets arbeiten Die Arbeit mit Framesets in Dreamweaver ist recht komfortabel. Wenn Sie ein Frameset aufrufen, sehen Sie alle Dokumente gleichzeitig im Dokumentfenster. Sie können jedes der einzelnen Dokumente direkt bearbeiten und sehen dann immer das spätere Ergebnis im Zusammenspiel mit den anderen Dokumenten des Framesets. Achten Sie darauf, dass nicht zufällig eine der im Frameset dargestellten und nun bearbeiteten Dateien in Dreamweaver noch einmal als einzelnes Dokument geöffnet ist. Dreamweaver erkennt dies nicht, und so können Änderungen einen Versionskonflikt hervorrufen. 169
9 Framesets 9.3.1 Framesets nachbearbeiten Wenn Sie das Frameset nachträglich bearbeiten wollen, geht das am besten im Quelltext. Klicken Sie dazu im Dokumentfenster wie im Frame-Fenster auf einen Rahmen. Dann ist nicht mehr ein Inhaltsdokument aktiv, sondern das Frameset selbst. Jetzt können Sie auf die Codeansicht umschalten und dann die gewünschten Veränderungen vornehmen. Probleme bei verschachtelten Frames Es kommt vor, dass Framesets auf zwei Dateien verteilt werden, wobei der Inhalt eines Frames ein weiteres Frameset ist. Dreamweaver hat Schwierigkeiten, diese Frameset- Dateien zu bearbeiten, und öffnet immer den Quellcode der untergeordneten Datei. Öffnen Sie in diesem Fall die gewünschte Datei mit einem Texteditor und bearbeiten Sie diese außerhalb von Dreamweaver. 9.3.2 Verlinkungen in Framesets Sie können Frame-Dateien verlinken wie gewohnt, nur müssen Sie zusätzlich den Ort angeben, wo sich der Link öffnen soll. Nach erfolgter Verlinkung erscheint in der Eigenschaftenpalette das Auswahlmenü Ziel, unter anderem auch mit den Namen der einzelnen Frames. Dokumente werden in dem ausgewählten Ziel- Frame dargestellt. Wenn Sie kein Ziel angeben, wird das nächste Dokument im gleichen Frame geladen wie das aktuelle Dokument, das den Link enthält. Abbildung 9.6 Ziele für Links in Framesets 9.3.3 Mehrere Frames gleichzeitig neu laden Wird ein Link angeklickt, müssen häufig neue Inhalte nicht nur in einem, sondern in mehreren Frames neu geladen werden. Diese Aufgabe ist mit HTML nicht zu erreichen, da damit immer nur ein Ziel-Frame angegeben werden kann. An diesem Punkt kommt JavaScript zum Einsatz. Leider unterstützt Dreamweaver den Austausch mehrerer Frames nicht standardisiert. Sie können sich jedoch mit der in Abschnitt 9.2,»Ein Frameset anlegen«, 170
Mit Framesets arbeiten 9.3 beschriebenen Methode Gehe zu URL behelfen oder das nachfolgende Skript verwenden. Zwei Frames austauschen Wenn Sie mit zwei Frames arbeiten, kopieren Sie das JavaScript aus Listing 9.3 in den <head>-bereich Ihres Frameset-Dokuments: <script type="text/javascript"> <!-- function ZweiFrames(URL1,Frame1,URL2, Frame2) { Frame1=eval("parent."+ Frame1); Frame2=eval("parent."+ Frame2); Frame1.location.href = URL1; Frame2.location.href = URL2; } //--> </script> Listing 9.3 Austausch von zwei Frame-Inhalten Die Links in Ihrem Navigationsmenü müssen Sie nun nach folgendem Schema umschreiben: <a href="javascript:zweiframes('url1','frame1','url2', 'Frame2')">LINK</a> Drei Frames austauschen Arbeiten Sie mit drei Frames, müssen Sie das JavaScript aus Listing 9.4 in den <head>-bereich Ihres Frameset-Dokuments kopieren: <script type="text/javascript"> <!-- function DreiFrames(URL1, Frame1,URL2, Frame2,URL3, Frame3) { Frame1=eval("parent."+ Frame1); Frame2=eval("parent."+ Frame2); Frame3=eval("parent."+ Frame3); Frame1.location.href = URL1; Frame2.location.href = URL2; Frame3.location.href = URL3; } //--> </script> Listing 9.4 Austausch von drei Frame-Inhalten 171
9 Framesets Verändern Sie die Links in dem Menü wie folgt: <a href="javascript:dreiframes('url1','frame1','url2', 'Frame2','URL3','Frame3')">LINK</a> Der Aufruf des JavaScripts in den <a href>-tags übergibt die beiden Parameter URL und Frame an das JavaScript im <head>-bereich und führt es aus. Nur für User mit aktivem JavaScript benutzbar Leider funktioniert diese Navigation nur, wenn der User JavaScript aktiviert hat. Wenn Sie auch Benutzer mit deaktiviertem JavaScript erreichen wollen, müssen Sie eine zweite Variante der Website mit einer Navigation ohne JavaScript bauen. Im Regelfall haben aber alle Browser JavaScript aktiviert. Ohne JavaScript würden sonst auch keine Spry- Menüs oder Flash-Filme funktionieren. Dreamweaver-Verhalten einsetzen Mehrere Frames können auch über ein Dreamweaver-Verhalten gleichzeitig geladen werden. Das Verhalten Gehe zu URL lädt ein HTML-Dokument an ein angegebenes Ziel. Wenn Sie dieses Verhalten zum Beispiel einer Schaltfläche mehrfach zuweisen, können auch mehrere Frames und mehrere Dokumente angegeben werden. Nachteil dieser Arbeitsweise ist das deutlich größere JavaScript im Dokument sowie die unübersichtliche Darstellung. Eine Möglichkeit, einzelne Verlinkungen der Dokumente nachträglich zu verändern, gibt es dann nicht. Ausführliche Informationen zu diesem Verhalten erhalten Sie in Abschnitt 9.2,»Ein Frameset anlegen«. 9.3.4 Eingebettete Frames (<iframe>) Eingebettete Frames sind eine Möglichkeit, HTML-Dokumente innerhalb eines anderen HTML-Dokuments anzuzeigen. Ein solcher Frame hat etwa die gleichen Eigenschaften wie ein Bild in HTML, allerdings wird an genau dieser Stelle nicht eine Bilddatei, sondern eine andere HTML-Datei dargestellt. In der aktuellen Dreamweaver-Version kann ein eingebetteter Frame über 1 in das Dokument eingefügt werden (siehe Abbildung 9.8). Leider fehlt hierzu jegliche Einstellmöglichkeit, sodass Sie komplett im Quelltext arbeiten müssen. Einzig das <iframe>-icon ist vorhanden. Dazu wechselt Dreamweaver automatisch in die Quelltextansicht. In der Designansicht wird nur ein grauer Bereich entsprechend der Frame-Größe dargestellt. 172
Mit Framesets arbeiten 9.3 Abbildung 9.7 Die Website von Galileo Design in eigenem HTML-Dokument 1 Abbildung 9.8 Einfügen eines eingebetteten Frame (<iframe>) Sollten Sie eingebettete Frames verwenden wollen, empfehlen wir Ihnen die Onlinereferenz SelfHTML (http://de.selfhtml.org/) von Stefan Münz, um einen Überblick über die Möglichkeiten zu bekommen. Die Eigenschaften sind aber etwa jene, die auch einem <image>-tag zugeordnet werden: Breite (width), Höhe (height), Rand (frameborder) und Inhaltsquelle (src). <iframe> und Hackerangriff Eingebettete Frames können auf den Wert Null gesetzt werden, sodass externer Quellcode und auch Skripte unsichtbar bleiben. Besonders der Internet Explorer ist bekannt für <iframe>-sicherheitslücken. Mittlerweile sind allerdings auch schon Angriffe über den Firefox bekannt geworden. 173
9 Framesets 9.4 Anlegen des Framesets für die Buchwebsite Wenn Sie das alternative Layout mit CSS aufbauen möchten, können Sie die folgenden Schritte überspringen, da wir für das CSS-Layout keine Frames benötigen werden. Schritt-für-Schritt: Ein Frameset anlegen 1 Letterbox installieren Bevor Sie ein Frameset für die Buchwebsite anlegen, installieren Sie die Erweiterung Letterbox Frameset von der DVD zum Buch (siehe dazu Abschnitt 4.2,»Extensions einsetzen«). 2 Frame-Umrandung anlegen Legen Sie zunächst eine Datei mit dem Namen rahmen.htm für die Frame-Umrandung an. Dieses HTML-Dokument wird in den Frames eingefügt, die unser Hauptdokument umgeben werden. In dieser Datei definieren Sie die gleichen Hintergrundeinstellungen wie in dummy.htm aus Kapitel 6,»Grundlegende Dokumenteinstellungen«. 3 HTML-Dokument für das Frameset Wählen Sie als Nächstes aus dem Menü Datei Neu und erstellen Sie ein neues HTML-Dokument. Diese Datei wird das Frameset beinhalten. 4 Frameset einfügen Wählen Sie nun aus der Einfügeleiste den Punkt Insert Letterbox Frameset aus. 174
Anlegen des Framesets für die Buchwebsite 9.4 5 Einzeldokumente festlegen Legen Sie anschließend die einzelnen Dokumente des Framesets fest und stellen Sie alle Rahmen auf Nein und»0«ein. Das Dokument rahmen.htm ergibt die Umrandung des Framesets 1, das Dokument dummy.htm 2 wird als Dokument in der Mitte des Framesets eingefügt. 1 2 3 6 Größe der Frames Aktivieren Sie nun im Bedienfeld Frames oder direkt im Dokumentfenster einen der Rahmen 3 und wechseln Sie anschließend in den Quelltext. Stellen Sie im Quelltext die Abmessungen der einzelnen Frames ein, wie im folgenden Listing zu sehen: <frameset rows="1*,600,1*" cols="*" frameborder="no" border="0"> <frame src="rahmen.htm" name= "topspace" frameborder="no" scrolling="no" noresize="noresize" marginwidth="0" marginheight="0" id="topspace" /> <frameset cols="1*,804,1*" border="0" frameborder="no"> 175
9 Framesets 7 Frameset speichern Als letzten Schritt wählen Sie aus dem Menü Datei Frameset speichern unter und speichern das Frameset unter dem Namen index.htm ab. Wenn Sie bisher alles korrekt angelegt haben, müsste Ihre Website jetzt im Browser wie in der folgenden Abbildung dargestellt werden. 176
Nachdem wir nun einen lokalen Webserver installiert haben, bereiten Sie Dreamweaver für die Arbeit mit dynamischen Websites vor. In diesem Kapitel erfahren Sie, wie das geht. 23 Dynamische Sites in Dreamweaver einrichten Vor allen weiteren Arbeiten mit dynamischen Websites muss Dreamweaver für den Testserverbetrieb eingerichtet werden. Wichtig ist dabei, dass sich der lokale Stammordner Ihrer Site im Dokumentenverzeichnis Ihres zuvor eingerichteten Webservers befindet. Abbildung 23.1 Stammordner im Root des Servers 23.1 Testserver-Einstellungen Die Einstellungen für Dreamweaver werden in der Site-Verwaltung vorgenommen. Legen Sie dort am besten eine neue Site an. Dann wechseln Sie in der Site- Definition zum Menüpunkt Testserver. 1 2 3 4 Abbildung 23.2 Menüpunkt Testserver in der Site-Definition 413
23 Dynamische Sites in Dreamweaver einrichten Servermodell angeben Zunächst müssen hier Sie ein Servermodell 1 angeben. In unserem Fall ist es ein PHP-MySQL-System. Welcher Server (IIS oder Apache) tatsächlich im Hintergrund agiert, spielt dabei keine Rolle. Wichtig ist nur die Auswahl des Systems, um die spätere Syntax für die Abfragen usw. festzulegen. Zugriff auf den Server Als Nächstes muss Dreamweaver erfahren, wie der Zugriff 2 auf den Server erfolgen soll. In den meisten Fällen wie auch in unserem wird das Lokal/Netzwerk sein. Sie können mit Dreamweaver auch direkt auf einem Webserver im Internet arbeiten. Wenn Sie dies möchten, wählen Sie unter Zugriff einfach FTP aus und geben dann die Zugangsdaten ein, soweit dies beim Anlegen der Remote- Informationen nicht schon geschehen ist. Testserver-Ordner Der Testserver-Ordner 3 ist in unserem Fall identisch mit dem lokalen Stammordner und muss entsprechend ausgewählt werden. Dreamweaver nimmt Ihnen die Arbeit ab, die Dateien immer auf den Server zu kopieren. Wenn Sie FTP als Zugriff angegeben haben, wird beim Arbeiten die aktuelle Datei automatisch auf den Server kopiert und die Vorschau über die URL des Webservers generiert. Dieses Verfahren dauert jedoch deutlich länger als bei einem lokal installierten Testserver. Adresse der Website Das URL-Präfix 4 ist der Pfad bzw. die HTTP-Adresse, die Sie im Browser eingeben müssen, um die Website anzuzeigen. In der Regel trägt Dreamweaver automatisch den korrekten Pfad ein, manchmal ist dies jedoch nicht der Fall. Nur wenn das URL-Präfix korrekt angegeben wurde, kann eine Website durch Dreamweaver ausgeführt werden. Die meisten Fehler beim Anlegen eines Testservers treten genau an dieser Stelle auf. Überprüfen Sie daher den korrekten Eintrag. Fehlermeldung nach Eintragen des URL-Präfixes Nachdem Sie das URL-Präfix wie angegeben verändert haben, kommt es eventuell zu einer Fehlermeldung. Diese können Sie ohne Weiteres ignorieren. Sie weist nur darauf hin, dass mit der eingegebenen Adresse keine Hyperlinkprüfung möglich ist. Mehrere Sites Wenn Sie mehrere Sites parallel betreiben, stimmt die Serverroot nicht mit dem Testserver-Ordner überein. Sie müssen dann dem URL-Präfix, das in der Regel 414
Site-Einstellungen testen 23.2 Abbildung 23.3 Fehlermeldung nach Eintragen des URL-Präfixes http://localhost lautet, noch das Verzeichnis hintenanstellen. Abbildung 23.2 zeigt, wie dies geschehen muss. 23.2 Site-Einstellungen testen Erstellen Sie ein neues Dokument index.php. Wichtig ist die Endung.php: Der Webserver erkennt sonst nicht, dass es sich bei dieser Datei um ein PHP-Skript handelt. Löschen Sie den gesamten Quelltext der Datei und fügen Sie folgende Befehlszeile ein: <? phpinfo()?> 5 Abbildung 23.4 Aufruf der Funktion phpinfo() im Quelltext Mit diesem Befehl können Sie die PHP-Grundeinstellungen anzeigen lassen. Wechseln Sie anschließend wieder in die Layoutansicht. Vorschau dynamischer Sites Nun wieder in der Entwurfsansicht (siehe Abbildung 23.5) können Sie durch Klick auf die Live-Ansicht 5 die Einstellungen testen. Im Erfolgsfall erscheint eine neue Leiste mit diversen Einstellungen, auf die wir in Abschnitt 26.1.1,»Variablen senden«, eingehen. Im Dokumentfenster wird das PHP-Skript direkt ausgeführt, und Sie sehen im Layout die automatisch von PHP generierten Inhalte. 415
23 Dynamische Sites in Dreamweaver einrichten 1 Abbildung 23.5 Den Testserver aktivieren Vorschau in der Live-Code-Ansicht In Dreamweaver CS4 können Sie neben der Live-Ansicht auch eine Live-Code- Ansicht aktivieren 1. Im Layoutfenster zeigt Dreamweaver dann den von PHP erzeugten Quelltext direkt an. Wenn die Live-Ansichten nicht funktionieren (Fehlersuche) Sollte es dennoch wider Erwarten nicht funktionieren, überprüfen Sie, ob der Webserver auch aktiv ist. Wenn der Fehler dort nicht zu finden ist, überprüfen Sie die angegebenen Pfade und vor allem nochmals das URL-Präfix. Überprüfen Sie, ob der Webserver aktiv ist. Haben Sie die Site korrekt definiert? Falls nicht, erscheint entweder das Icon zur Live-Ansicht nicht, oder Dreamweaver gibt eine Fehlermeldung aus. Stellen Sie sicher, dass Ihre Dateien wirklich in der Serverroot liegen. In 90 Prozent aller Fehlerfälle in Schulungen sind die Pfade nicht korrekt eingegeben worden, oder das URL-Präfix ist falsch. Überprüfen Sie der Reihe nach alle Einstellungen. 416
Site-Einstellungen testen 23.2 Abbildung 23.6 Live-Code-Ansicht Keine Framevorschau dynamischer Sites Dynamische Sites können Sie lokal nicht über ein Frameset aus Dreamweaver heraus aufrufen. Starten Sie immer ein Inhaltsdokument, um eine Vorschau zu erhalten, oder starten Sie das Frameset direkt aus dem Browser heraus, indem Sie den Pfad zum Frameset eingeben. Testserveransicht In der Site-Ansicht steht Ihnen jetzt auch die Option Testserver 2 zur Verfügung. Aktivieren Sie Ihren Testserver durch einen Klick darauf. Die Ordner auf der linken Seite 3 werden jetzt rot dargestellt. 2 3 Abbildung 23.7 Testserveransicht in der Site-Verwaltung 417
23 Dynamische Sites in Dreamweaver einrichten Wenn Sie Ihren Testserver lokal betreiben, ist diese Ansicht etwas verwirrend, zumal ja eigentlich beide Seiten gleich sind. Für einen Testbetrieb spielt es aber keine Rolle, wo sich der Testserver befindet. Auch Ihr eigener Rechner wird über eine IP-Adresse angesprochen (127.0.0.1). Dreamweaver ist jetzt für den Betrieb mit einem Testserver vollständig eingerichtet. Daten auf dem Testserver sichern! Wenn Sie auf einem Windows-System arbeiten, werden Apache und IIS auf Ihrem Laufwerk C: installiert. Dieses wird in den meisten Fällen auch Ihr Systemlaufwerk sein und ist sehr anfällig für Systemfehler. Bei einer Neuinstallation Ihres Systems sind im schlimmsten Fall alle Daten für immer verloren. Sorgen Sie daher dafür, dass die Daten im Rootverzeichnis des Webservers regelmäßig auf einer anderen Partition oder CD gesichert werden. 23.3 Buchwebsite für dynamische Inhalte einrichten Buchwebsite Wir gehen jetzt davon aus, dass Sie bereits einige Übung im Umgang mit Dreamweaver und seinen Layoutfunktionen haben. Wir sparen uns daher in allen weiteren Schritten beim Aufbau der Buchwebsite diese Erklärungen. Wenn es an der einen oder anderen Stelle hakt, lesen Sie bitte in den entsprechenden Kapiteln nach. Ebenso ist es erforderlich, die einleitenden Kapitel zum Aufbau des dynamischen Teils zu lesen. Ohne das Wissen über die Funktionen ist es sehr schwer, die Arbeitsschritte nachzuvollziehen. Schritt-für-Schritt: Dateiendungen 1 Dateiendungen ändern Um auch weiter mit der von Ihnen erstellten Buchwebsite arbeiten zu können, müssen einige Änderungen an den Site-Einstellungen erfolgen. Ändern Sie die Dateiendung aller HTML-Dokumente in.php um. Nehmen Sie dies bitte unbedingt im Dateifenster von Dreamweaver vor und lassen Sie alle Verlinkungen automatisch aktualisieren, wenn Dreamweaver dies vorschlägt. 418
Buchwebsite für dynamische Inhalte einrichten 23.3 2 Lokalen Stammordner kopieren Kopieren Sie anschließend den gesamten bisherigen lokalen Stammordner Ihrer Übungswebsite in das Dokumentenverzeichnis Ihres lokalen Webservers. 3 Site-Einstellungen anpassen Ändern Sie die Site-Einstellungen Ihrer Übungswebsite so, dass der in die Dokumentenroot kopierte Ordner als lokales Stammverzeichnis angegeben wird, oder erstellen Sie eine neue Site mit den soeben genannten Vorgaben. 4 Einstellungen für den Testserver Legen Sie anschließend, wie in der Abbildung gezeigt, die Einstellungen für den Testserver fest. Sie müssen natürlich Ihre lokalen Parameter eintragen. 419
23 Dynamische Sites in Dreamweaver einrichten 5 Geänderte Einstellungen testen Öffnen Sie nun das Dokument 1_0.php und starten Sie mit (F12) bzw. (Alt)+(F12) am Mac eine Browservorschau. Wenn Sie alles richtig angelegt haben, wird dieses Dokument genauso angezeigt wie bisher. Eine Live-Ansicht können Sie erst starten, wenn sich im Dokument PHP-Skripte befinden. Dies ist zum jetzigen Zeitpunkt noch nicht der Fall. Wenn Sie jetzt alles vollendet haben, steht einer erfolgreichen Arbeit nichts mehr im Wege. 420
Index #PCDATA 639 #REQUIRED 639 $_COOKIE 370 $_ENV 370 $_FILES 370 $_GET 370 $_GET['VARIABLENNAME'] 370 $_POST 370 $_REQUEST 370 $_SERVER 370 $_SESSION 370 $GLOBALS 370 <iframe> 172 1:1-Beziehung 424 1:n-Beziehung 424 A <a href> (Tag) 268 Abfrage eigene überprüfen 488 erstellen 469 mehrerer Tabellen 592 spezifizieren 442 testen 485, 488 verschachteln 595 verschachtelte 598 Abhängiger Bereich Anzeigeoption 504 Absatz CSS-Stil zuweisen 204 Absenden-Schaltfläche 303 Absolute Pfadangabe 92 Abstand messen 80 Ad-Aware 356 Administration 441 Administrationsebene 361 Administrationsoberfläche 543, 553 Adobe Bridge 160 Agnitum 385 Ajax 251, 255, 657 Aktion 177 Flash steuern 342 Aktionsprotokoll 101 Aktive Hyperlinks 118 Aktualisierungsformular 553 erstellen 627 Als Vorlage speichern 276 ALTER 441 AND-Bedingung 594 Änderungsformular 553, 558 anlegen 556 erstellen 547 Anker anzeigen 270 benannter 269 hinzufügen 269 Ankerpunkt für AP-Elemente 219 Anmeldeformular 581 Ansichtsoptionen 45 Anti-Aliasing 41 Anwenderfreundlichkeit 361 Anwendung Bedienfeldgruppe 450 Bindungen 467 Anzeigemöglichkeit 44 Apache 383, 384 installieren 387 Zugriff erlauben 386 AP-DIV 216 AP-Element wiederholte Bereiche 492 AP-Elemente 216 Abmessungen 220 anlegen 218 auswählen 219 Bedienfeld 216 Definition 216 ein- und ausblenden 229 erstellen 216 Hintergrundbilder 221 Hintergrundfarben 221 in Tabellen umwandeln 227 markieren 219 Positionen 220 Reihenfolge 220 Sichtbarkeit 221 Verhalten hinzufügen 229 zentrieren 239 675
Index AP-Elemente (Forts.) ziehen 229 AP-Elemente-ID 219 Arbeitsablauf 38 Arbeitsbereich umschalten 45 Arbeitsoberfläche 46 Array 370, 371 ausgeben 375 superglobales 370 Variablen auslesen 370 ASCII 72 ASP 383 ASP.NET 383, 395 Assistent Aktualisierungsformular für Datensätze 627 Einfügeformular für Datensätze 544, 626 Attribut als dynamische Daten 509 suchen 334 Aufbau der Buchwebsite AP-Elemente 238 Aufzählung 428 Ausgabemedien 205 unterschiedliche 188 Austausch von zwei Frame-Inhalten 171 Auswahlliste 301 dynamische 549, 623 Auswahlseite 556 Authentifizierung 575 auto_increment 431, 432 Automatischer Scrollbalken 168 B Balkendiagramm 510 Barrierefreies Webdesign 208 Barrierefreiheit 129 Baumstruktur 632 Bedienfeld Ebenen 217 Elemente 148 Verhalten 179 Bedienfeldgruppe 45 anpassen 47 Bedingung als Serververhalten 615 Bedingung (Forts.) als Serververhalten anlegen 614 mit PHP 375 Befehl löschen 84 speichern 83 Benannter Anker 269 Benutzer 439 anlegen 580, 583 anmelden 577 authentifizieren 575 verwalten 575 Benutzerauthentifizierung 627 Schema 575 Benutzerverwaltung 575 Tabellen 575 Zeitstempel 576 Berechnung Kommata 368 Berechtigung setzen 112 Bereich Anzeigeoptionen für abhängigen 504 in Abhängigkeit von Daten anzeigen 503 scrollbarer 226 wiederholen 480 wiederholter 281 Bestellvorgang 560, 589 Bestimmte Datensätze abfragen 481 Besuchte Hyperlinks 118 Beziehung Datenbank 422 Bezugspunkt 118 Bibliothek 275, 282 Bibliotheken und JavaScript 285 Bibliothekselement 283 BIGINT 427 Bild 145, 154 als Schaltfläche 304 Alternativtext 150 aus Datenbank 496 austauschen 180 bearbeiten 148, 152 bei onmouseout wiederherstellen 182 Bildabmessungen 153 Darstellungsqualität 153 dynamisch einfügen 496 dynamisch hinzufügen 496 einfügen 148 Helligkeit und Kontrast 152 676
Index Bild (Forts.) Helligkeit und Kontrast einstellen 153 im Web 145 in Fireworks optimieren 153 in wiederholten Bereichen 499 Platzhalter 156 Platzhalterbilder 156 scharf stellen 153 Suchmaschinen 150 Tipps 154 Transparenzen 146 von Text umfließen lassen 154 vorausladen 182 Vorschau 151 zu Favoriten hinzufügen 149 zuschneiden 153 Bildabmessungen 153 Bildbearbeitung 152 Bilddatei 149 Bildformate 145 Bild-Platzhalter 497 einfügen 496 Bildquelle Datensatz auswählen 508 Bildschirmabmessung anzeigen 80 Bildschirmauflösung 81 Bildschirmgröße kleine 73 Binäre Datentypen 427 Bindung 459, 471, 474 erstellen 469 Bindungen-Bedienfeld 467 BLOB 427 Block einfügen 327 Boolesche Funktionen 372 Boolesche Operatoren 372 Briefing 36 Browser Scrollbalken 227 Browserfenster 163 Browserleiste 206 verändern 206 Browserliste 76 Browservorschau 75, 76 Buchwebsite Administrationsebene 565 Bibliotheken 285 Bildern einfügen 160 Buchwebsite (Forts.) CSS erstellen 230 CSS- und AP-Elemente 238 CSS-Layout 238 Datenbank anbinden 454 Datenstruktur 444 Detailseiten 522 Dokumenteinstellungen 126 dynamische Inhalte 519 Frameset anlegen 174 Funktionsschema 519 für dynamische Inhalte einrichten 418 Kontaktformular erstellen 317 Letterbox Frameset 86 Masterseite 520 Navigation 285 Rollover-Effekte 186 Sitestruktur 285 Tabellenlayout 138 Vorlagen 285 Webserver 384 Zugriffsrechte 586 C Cache 99 case 377 case sensitiv 431 CDATA 639 CGI 351, 358 CHAR 427 Checkbox 299 dynamische 550 Child-Element 632 CHMOD 112 Clientseitiges Skripting 357 Cloaking 102 Code Ansichtsoptionen 322 ausblenden 324 automatisch vervollständigen 325 Elemente finden 51 halbautomatisch erstellen 325 markierte Bereiche ausblenden 324 prüfen 322 Snippets 326 ungültigen hervorheben 322 wiederverwenden 326 Codeansicht 45, 54 677
Index Codeblock 608 Platzhalter einfügen 610 Codeblock (PHP-Tag) 461 Codeformat 519 Codefragment 326, 459, 618 Coder-Ansicht 45 Codierung 122 Computerdatenquelle 436 Connections-Ordner 452 Content-Management-System 212, 351, 354 Cookies 356 Cookie-Variable 460, 461, 488 CREATE 441 Crossmedia Publishing 354 CSS 187 Anzeige im Dokumentfenster 190 Ausgabemedien 188 Bearbeitung 201 Bedienfeld 198 Boxmodell 208 Browserleisten 206 DIV-Elemente 210 DOC-Type 209 erstellen 197 exportieren 122 externes 194 Fehler vermeiden 191 Formulare 315 Hilfen 190 ID-Selektoren 197 in der Eigenschaftenpalette 203 in externe Datei verschieben 122 internes 192 JavaScript 208 Klassen-Selektoren 195 Kontext-Selektoren 196 Kurzschrift 65 Layout 190, 207 Layout-Hilfsmittel 189 Layout-Hintergründe 189 positionieren 207 Print 188 Referenz 201 Regel-Definition 200 Regeln 200 Regeln definieren 199 Regeln erstellen 199 Regeln löschen 199 CSS (Forts.) Screen 188 Seiteneigenschaften 120 Selektoren 195 Stil-Definition 200 Tag-Selektoren 196 Texte formatieren 202 und XML 632 Voreinstellungen 188 Vorgehensweise und Regeln 191 Werkzeuge 188 zuweisen 203 CSS 2.0 187 CSS-Datei einbinden 194 externe anlegen 200 verknüpfen 194, 199 CSS-P-Element 216 CSS-Referenz 201 CSS-Stile 192 Arten 192 bearbeiten 197 verschieben 193 Voreinstellungen 65 CSS-Syntax 194 CSS-Voreinstellungen 188 CSS-Vorlagen 189 CSV-Daten 346, 347 importieren 346 D Data-Base-Management-System 421 DATE 427 Datei externe einbinden 377 synchronisieren 112 versteckte anzeigen 452 Dateibrowser 160 Dateiendung Schreibweise 96 Dateifelder 302 Dateifenster 49 Site-Verwaltung 49 Dateigröße 81 Dateiverwaltung 108 Daten abfragen 442 an URL anhängen 293 678
Index Daten (Forts.) aus mehreren Tabellen 560 dynamische 622 einfügen 543 in abhängigen Bereich einfügen 504 in Diagramm auswerten 509 mit Hyperlinks übergeben 513 sortieren 443, 471 verbinden 560 zum Provider exportieren 433 zwischen Dokumenten austauschen 298 Daten übergeben in der URL 513 Datenausgabe 468 Datenbank abfragen 441 Abfragen testen 488 anbinden 449 anzeigen 453 Bedienfeld 453 Benutzer anlegen 440 Benutzer löschen 439 bestimmte Datensätze abfragen 481 Beziehung 422 Beziehungen herstellen 423 Bilder verlinken 496 Daten importieren 432 Datensatzanzahl anzeigen 506 Datensätze einfügen 432 Einführung 421 erweiterte Abfragen erstellen 476 Felder anlegen 429 füllen 432 ID mit URL übergeben 483 in Datensätzen navigieren 501 Kennwort 439 Komponenten 421 konnektieren 449 mehrere Datensätze abfragen 479 relationale 422 relationales Modell 423 Relationen 422 selektieren 379 Struktur anzeigen 453 Tabellen 421 unerwünschte Zeichen entfernen 518 Verbindung 453 Verbindungsaufbau 379 Datenbankabfrage Ausgabe formatieren 517 erstellen 622 Datenbankaktionen 450 Datenbankanbindung 450 Datenbankkonnektierung als Serververhalten 607 erstellen 607 Datenbankstruktur importieren 432 Datenbankverbindung mit Access 437 Datenformat überprüfen 305 Datenquelle Bilder 508 Datensatz Abfrage löschen 519 abfragen 442, 469 aktiv/inaktiv 559 aktualisieren 443, 626 Anzahl anzeigen 506 anzeigen 474 bearbeiten 553 bestehender 547 Darstellung beeinflussen 517 einfügen 432, 443, 626 in Großbuchstaben 517 in Tabelle einfügen 544 in Tabellen ausgeben 489 löschen 443, 559, 627 manipulieren 547 sortieren 477 überflüssige Zeichen entfernen 518 verändern 553 Datensatzanzahl 506 Datensatzgruppe 469, 476, 622 anlegen 622 erweiterter Modus 476 Navigationsleiste 624 Navigationsstatus 625 Datensatzgruppen-Navigationsleiste 501, 502 Datensatzgruppen-Navigationsstatus 625 Datensatz-ID 483 Datensatznavigation 501, 521, 555, 556 eigene erstellen 507 Navigationsstatus 507 Datenstruktur 423 der Buchwebsite 444 679
Index Datentabelle grafische Auswertung 509 Datentyp 367, 427 mischen 367 zuordnen 426 Datenübertragung simulieren 485 DATETIME 427 DECIMAL 427 Deklarieren Variablen 458 DELETE 441, 443 Design Notes 103, 326 Design-Ansicht 44 Desktop-Firewall 100 Detaildatensatz löschen 562 Detaildatensätze anzeigen 513 Detailseite 516 erstellen 515 DHTML 43, 208 Diagramm dynamisch generieren 512 Display all errors 399 DIV-Elemente 210, 211, 212 DIV-Tag 210 CSS-Stil zuweisen 211 einfügen 210 HTML-Elemente umschließen 211 verschachteln 212 DOC-Type 137, 209 DOC-Type-Definition 637 DocumentRoot ändern 392 Dokument aus Vorlage 278 Einstellungen 117 interne Hyperlinks 269 mehrere durchsuchen 333 Ränder 118 sichern 334 verlinken 267 Dokumentansicht 50 Dokumententypangabe 630 Dokumentfenster 45, 81 Dokumentraster 78 Dokumentrelative Verlinkung 98 Dokumenttyp-Definitionen 70 DOUBLE 427 do-while-schleifen 374 Dreamweaver erweitern 83 Systemanforderungen 32 Tabelle 127 DROP 441 DSN-Konfiguration 437 DTD 637 Aufbau 638 externe 640 importieren in Dreamweaver 641 in Dreamweaver einbinden 641 mit Dreamweaver entwickeln 639 öffentliche 641 private 641 schematischer Aufbau 638 Dual Screen 45 dwt-datei 277 Dynamisch eingefügte Bilder 500 Dynamische AP-Elemente 492 Dynamische Auswahlliste 623 erstellen 549 Dynamische Checkbox 550 Dynamische Daten 622 zuweisen 548 Dynamische Liste Parameter 549 Dynamische Navigation 596 Dynamische Optionsschaltergruppe 623 Dynamische Site einrichten 413 Framevorschau 417 Vorschau 415 Dynamische Tabelle 623 erstellen 489 mit Serververhalten 490 Dynamische Website Definition 43 mit CSS 492 Dynamische Websites 351 Konzeption 359 Layout 360 Typen 353 Vorgehensweisen 351 Vorteile 351 Dynamische(s) Liste/Menü 549 Dynamischer Parameter 515 Dynamischer Text 623 Dynamisches Diagramm 509 Dynamisches Formular 543 680
Index Dynamisches Kontrollkästchen 550, 623 Dynamisches Textfeld 623 hinzufügen 547 Dynamisches Verhalten Bereich anzeigen 623 Seitenerstellung 624 wiederholter Bereich 623 zuweisen 621 E Ebene erstellen 216 JavaScript 229 scrollbare Bereiche 226 verschachteln 221 zentrieren 239 Ebeneneigenschaften 219 Ebenenüberlauf 223 Ebenenwerkzeuge 218 Echo (PHP-Tag) 461 Effekt 185 Eigenschafteninspektor 45, 68 Eigenschaftenpalette 340 Einfügefehler 151 Einfügeformular 544 eigenes verwenden 547 erstellen 626 für Datensätze erstellen 626 Einfügeinspektor 45 Einfügeleiste 45, 48 Einfügen von Datensätzen 432 Eingabehilfe 68, 325 abschalten 151 deaktivieren 68 Eingebettete Frames 172 Einstellungen Firewall 73 Element 148 absolut positioniertes (AP) 216 Elemente-Palette 148, 149 else (PHP-Tag) 462 E-Mail-Adresse 271 Endlosschleife 426 Entwicklungsumgebung 458 Entwurfsansicht 51, 332 visuelle Hilfsmittel 51 ENUM 428 Erfolgsmeldung ausgeben 544 Erfordern (PHP-Tag) 461 Ergebnis Hyperlink-Prüfung 269 Erweiterte Abfrage erstellen 476 Erweiterung 178 installieren 85 sichern 87 Excel-Tabelle einfügen 346 Extension Manager 84, 85 Extensions 84 einsetzen 84 Fehler vermeiden 86 Sicherungen erstellen 87 Externe CSS-Datei verknüpfen 204 Externe CSS-Stile 194 Externes Skript einbinden 377 Namensvergabe 377 F Farben 119 Farbtiefe 39 Fehlerhafte Syntax 322 Feineinstellung 518 Fernschreiber 189 Fernsehgerät 189 FILE 441 Filter auf Abfragen anwenden 482 Firefox 75 Firewall 100, 385 Einstellungen 100 Outpost 385 Fireworks 41 optimieren 153 FLA-Datei 342 Flash 147, 337 Abspielqualität 341 Aktivierung im Browser 339 aus Dreamweaver öffnen 342 Authoring-Datei 342 Eigenschaften einstellen 340 einbinden 338 einfügen 338 681
Index Flash (Forts.) einsetzen 337 in Dreamweaver öffnen 342 JavaScript 339 mit Aktionen steuern 342 Parameter einstellen 341 Sound 341 Flash-Film 338 abspielen 338 einbinden 338 einfügen 339 steuern 342 Fließkomma 368 Fließkommazahlen 367 FLOAT 427 foreach-schleife 375, 464 <form>-tag 295 Formular 293 absenden 303 Auswahllisten 301 Bildfeld 304 Dateien übertragen 302 Dateifelder 302 dynamisches 543 einfügen 544 Elemente 293, 296 erstellen 294 Formularfelder gestalten 315 für Aktualisierungen erstellen 553 für Änderungen erstellen 553 gestalten 231, 315 Kennwort 297 Layout 315 Login 577 mit CSS 315 neuer Benutzer 580 ohne CSS 315 per E-Mail 294 Senden als 545 Sprungmenüs 301 Spry 304 Standardwerte übertragen 545 Textbereiche 299 Textfelder 297 Typprüfung 545 überprüfen 304, 546 Variablennamen 296 Variablenvergabe 296 zur Anmeldung neuer Benutzer 581 Formular (Forts.) Zuweisung von Variablen 296 Formulardaten Übertragungsmethoden 293 Formularelement 296 dynamische Inhalte 547 dynamische Werte zuweisen 550 positionieren 315 Typen 545 Formularfeld Beschriftung 545 dynamisch anbinden 563 Tabellenfeldern zuordnen 564 Formularvariable 460, 461, 488 einfügen 461 for-schleifen 373 Fortgeschrittene Techniken 589 Forum 354 Frame 167 eingebettet 172 gleichzeitig austauschen 184 gleichzeitig neu laden 170 Nachteile 164 Scrollbalken 168 verschachtelt 170 Vorteile 163 zentrieren 165 Frame-Inhalt austauschen 171 Frame-Rahmen 167 Frameset 163, 165 anlegen 166 automatisch nachladen 166 bearbeiten 169 einstellen 168 Funktionsweise 163 Gestaltung mit 164 Größe 168 mehrere Frames austauschen 170 nachbearbeiten 170 speichern 169 und Suchmaschinen 165 verlinken 170 Verlinkungen 170 verschachteltes 165 Fremdschlüssel 425, 591 FTP passives 100 Verbindung 99 682
Index FTP (Forts.) Zugang 99 Zugangsdaten 99 G GET 293 GIF 146 transparentes 135 Google Indizierung von Framesets 165 Grafiken 145 Grafikformat webtaugliches 147 Grafikprogramm 38 GRANT 441 Groß- und Kleinschreibung 96 Groß-/Kleinschreibung beachten 431 Gruppenarbeit 109 H Handwerkzeug 80 Handy 189 Helligkeit Bilder 152 Hilfslinie 78 Hilfsmittel visuelle 51 Hintergrund 118 Hintergrundbild 118, 125 Hotspot 154 anlegen 155 htdocs 390 HTML 4.0 70 HTML 4.01 179 HTML 4.01 Transitional 123 HTML-Attribut dynamisch generieren 507 HTML-Dokument Kaskadierung 192 Struktur 192 HTML-Entity 72 HTTP-Adresse 98 HTTP-Protokoll 383 HTTP-Request 357 Hyperlink 118, 267 aktiver 118 Hyperlink (Forts.) aktualisieren 60 anlegen 267 auf E-Mail-Adressen 271 besuchter 118 innerhalb eines Dokuments 269 Parameter übergeben 513 prüfen 269 relativ zu 271 relativ zu Stammordner 271 Ziel angeben 268 Hyperlink-Methode 270 Hyperlinks 98 Hyperlink-Überprüfung 98 I ID 197 mit Variablen übergeben 483 ID-Selektor 197 anlegen 199 if 376 IF (PHP-Tag) 462 if-else 376 IIS 383, 385, 395 Installation (Windows 2000) 396 Installation (Windows Vista Business) 404 Installation (Windows XP) 396 MySQL installieren 403 PHP-Einstellungen 402 phpmyadmin installieren 403 Rootverzeichnis 398 Standardwebsite 400 verwalten 398 IIS 7 404 Image Map 154 Import und Export 104 Import von Datendateien 432 Importieren CSV-Daten 347 Excel-Dokument 346 Word-Dokument 345 include 377, 379 Include (PHP-Tag) 461 include_once(ziel) 379 INDEX 441 Inetpub 398 683
Index Infos lokale 97 Inkrementieren 373 INSERT 441, 443 Installationspaket 386 INT 427 Interaktion mit Photoshop CS3 157 Interne CSS-Stile 192 exportieren 193 Internet Explorer 75 Browserleisten 206 mehrere Versionen 77 Ränder 119 Internet Information Server 383 Internet-Informationsdienst 396 Internetnutzung 29 ISO-8859-1 123 J JavaScript 177 Aktionen 177 CSS 208 deaktiviert 172 Effekt 185 Elemente ansprechen 180 Version 179 JPEG 145 JPG 145 K Kennwortfeld 297 KISS-Regel 361 Klasse 195 Klassennamen 192 Klassen-Selektoren 195 Klein-/Großschreibung 96 beachten 431 Kommata in Berechnungen 368 Kommentar 326 Kommentar (PHP-Tag) 462 Konnektierung von MySQL mit PHP 450 Kontext-Selektor 196 anlegen 199 Kontext-Selektoren 121 Kontrast Bilder 152 Kontrollkästchen 299 dynamisches 550, 623 Eigenschaften 300 gruppieren 299 Werte vergleichen 551 Kontur 189 Konzept 36 L LAMP 384 Layer 216 Layout 39 aufbauen 127 Bezugspunkt 117 Hilfsmittel 189 Konzeption 37 mit DIV- Tags 212 Layoutfenster 53 Layouthilfe 78 Layoutmodus 70 Layouttabellen-Modus 78 Layouttricks 125 Leerzeichen 96 leftmargin 119 LIKE 602 Lineal aktivieren 79 Linker Rand 118 Linux 384 Liste dynamische 549 Live-Ansicht 415, 474 Datenbankabfragen 475 Einstellung 486 localhost 389 Login Seite erstellen 577 Weiterleitung 578 Logischer Operator 372 Lokale Infos 97 Lokaler Stammordner 97 LONGBLOB 427 LONGTEXT 427 M Mac OS X 29 mailto 272 684
Index marginheight 119 marginwidth 119 Mark of the Web einfügen 253 Master-Detaildatensatz 625 Masterseite 516 erstellen 515 Mastervorlage erstellen 281 Medien Flash 339 Medientyp 188 MEDIUMBLOB 427 MEDIUMINT 427 MEDIUMTEXT 427 Mehrere Datensätze abfragen 479 Menü dynamisches 549 Metaangabe 124, 166 Dublin-Core 125 Suchmaschinen 166 Microsoft Access 434 Microsoft Visio 362 MM_swapImage 178 MPEG 145 MS-SQL 442 MySQL 384, 434 Benutzerverwaltung 438 Datenbank anlegen 428 Datenfreigabe 473 Datensatz sortieren 477 Datensätze einfügen 432 Datentypen 426, 427 erstellen einer Datenbank 428 Felder anlegen 430 Grundlagen 421 in Access bearbeiten 435 installieren 394 Kennwort 438 Rechtevergabe 441 root 438 root@localhost 438 starten 394 Tabellen 435 Tabellen anlegen 429 unter IIS installieren 403 Version 428 MySQL Administrator 394 MySQL Query Browser 395 mysql_connect 379 MySQL-Verbindung Benutzername 451 einrichten 450 Kennwort 451 N n:m-beziehungen 424 Nach dem Einfügen hierher gehen 544 Namensräume 670 Navigation dynamisch erstellen 624 dynamisch generieren 596 mit Grafiken 360 Spry 257 Navigationserweiterung 360 Navigationsplan 39, 93 Navigationsstruktur 37.NET 395 Netscape 119 Ränder 119 Neue CSS-Regel 199 Neuer CSS-Stil 199 Neuerungen in Dreamweaver 33 noframes-bereich 166 Null 431 O Objekt 339 ODBC 434 Datenbanken 436 Treiber 434, 437 Office-Datei 345 einfügen 345 Office-Dokument einfügen 69 onmouseover 178 Open Database Connectivity 434 Open Database Connectivity ODBC Open-Source-Projekt 352 OpenType 72 Opera 75 Operator logischer 372 Optionsfeld Eigenschaften 300 685
Index Optionsschalter 301 gruppieren 301 Optionsschaltergruppe dynamische 623 Optionsschaltergruppen 301 ORDER BY 443 Outpost (Firewall) 385 P Parameter dynamischer 515 Parent-Element 632 Passives FTP 100 Passwort in Datenbanken speichern 577 verschlüsseln 577 PDA 189 Personalisierte Website 355 Pfadangabe absolut 92 absolute 91 relative 91, 92 Photoimpact 41 Photoshop 40 Anti-Aliasing 41 Photoshop CS3 157 PHP 363, 384 auf IIS installieren 398 Bedingungen festlegen 375 Befehle einsetzen 461 Boolesche Operatoren 372 Dollarzeichen 369 Echo-Befehl 365 Einführung 363 error_reporting 463 externe Dateien einbinden 377 externe Variablen anzeigen 464 Fehlermeldungen 463 Fehlerquellen 465 Fehlersuche 463 in Dreamweaver einfügen 461 in HTML einbinden 366, 368 Kommata in Berechnungen 368 mit include arbeiten 377 mit MySQL verbinden 379 mit Sessions arbeiten 380 MySQL-Datenbanken abfragen 379 PHP (Forts.) Referenz 462 Schleifen programmieren 372 Schreibweise von Zahlen und Zeichen 367 unter Windows Vista Business 404 Variablen 369 Vergleichsoperatoren 371 Verschlüsselungsmethoden 577 Vorteile 366 Zeichenketten addieren 367 PHP 5 364 PHP Page Encoding (PHP-Tag) 461 PHP und MySQL 352 php.ini 369 php-4.3.3-installer.exe 398 php-5.2.9-1-win32-installer.msi 398 phpbb 354 PHP-Dokument mit Sessions arbeiten 605 PHP-Dokumentation 381 PHP-Einstellung anzeigen 402, 415 phpmyadmin Benutzerverwaltung 439 Tabellen anlegen 429 unter IIS installieren 403 PHP-Referenz 381 PHP-Version 364 Platzhalter 272 Platzhalterbild 156 Plug-in 183 überprüfen 183 PNG 146 Popup-Menü mit Ebenen erstellen 216 Portal 355 POST 294 Primärschlüssel 424, 431, 445, 481 automatisches Hochzählen 431 PROCESS 441 Programmgrundlagen 43 Programmierung 321 Projektablauf 35 Projektor 189 Prozessdatenfreiheit 425 Prüfung Hyperlink 269 Puzzle 230 686
Index Q Quellcode arbeiten im 321 formatieren 321 Quellformatierung 322 Quelltext 321, 332 automatisch formatieren 322 automatisch optimieren 332 automatischer Umbruch 62 Datenbankanbindung 472 dokumentieren 326 Entwurfsansicht 332 in der Layoutansicht 332 Schreibweisen 62 unformatierter 322 Quick-Tag-Editor 332 R Radiobutton 301 Rand Breite 119 definieren 118 Höhe 119 linker 118 Raster 78 aktivieren 78 ausrichten 78 Rechtevergabe 439 Rechteverwaltung 440 Redaktionssystem 354 Redundanzfreiheit 424 REFERENCES 441 Referenzielle Integrität 425 REGISTER_GLOBALS 369 Relation 425 Datenbanken 422 Relationales Datenbankmodell 423 Relationstypen 424 Relative Pfadangabe 92 RELOAD 441 Remote-Zugriff 110 require(ziel) 379 require_once(ziel) 379 Rollover anlegen 40 erstellen 180 Root-relative Verlinkung 98 Rootverzeichnis 399 Router 100 RSS 645 RSS-Feed einbinden 645 externe einbinden 653 S Safari 75 Schaltfläche eigene erstellen 304 zum Absenden 303 Schleife Anzahl der Durchläufe 373 Datensätze ausgeben 373 programmieren 372 Schleifenbedingung 372 Schleifendurchlauf 372 Schreib- und Leserechte 112 Schrift mit CSS formatieren 202 Schriftformatierung zuweisen 204 Schriftgrößen 202 Scrollbalken automatischer 168 Firefox 227 Scrollbarer Bereich 226 Seiteneigenschaft 117 Seitenrändereinstellung 119 SELECT 441, 442 SELECT-Abfrage 477 SELECT-Befehl 592 Selektor 192 Typ 195 Server Zugriff 414 Servermodell 414 Serverroot 389 eigene angeben 391 Serverseitiges Skripting 357 Servervariable 460, 488 Serververhalten 472, 475, 479, 490, 607 alle Datensätze anzeigen 479 anlegen 607 Bedienfeld 472 Bedingung 615 Bereich wiederholen 479 687
Index Serververhalten (Forts.) Bezugsquellen 619 eigene schreiben 607 kopieren 608 Positionierung im Code 613 testen 612 weitergeben 618 Session 352, 380, 604 Arbeitsweise 604 Cookies 605 Sitzungsvariablen anlegen 606 starten 381, 605 Variable 605 Variable registrieren 606 Variablen 605 Variablen anzeigen 606 Variablen registrieren 605 session_destroy() 381 session_register(variable) 381 session_start() 381 session_unset() 381 SESSION-Array 464 ausgeben 464 Session-ID 381 übergeben 605 übermitteln 380 Warenkorb 352 Sessionvariable 488 SET 428 SFTP 100 Shockwave 342 Shopsystem 354 SHUTDOWN 441 SID 605 Site anlegen 38 Ansicht 105 Dateiansichtsspalten 104 Definition 96 Name 96 sichern 104 Vorgaben 73 Siteansicht zur Siteansicht umschalten 50 Site-Definition Testserver einrichten 413 Site-Einstellung testen 415 Sitemap 39, 92 Site-Verwaltung 95 aufrufen 49 Cloaking 102 Design Notes 103 Fehlerquellen 105 FTP-Zugang einrichten 99 Ordnerstruktur 92 Regeln beim Anlegen 95 Remote-Zugriff 110 Site-Definition 96 Standard-Bilderordner 98 Testserver 102 WebDAV 101 Sitzungsvariable 460, 461, 488, 606 Skript externes Skript einbinden 377 Skripting clientseitiges 357 serverseitiges 357 Skriptsprache 358 Skriptzugriff 400 Slicing 38, 41 SMALLINT 427 Snippet 326 sichern 329 Sonderzeichen 72, 95 Sound mit Flash 341 Spaltenbreiten 133 Spry 251 Akkordeon 261 Effekte 252 für Formulare 304 Menüleiste 257 Menüleiste anpassen 258 Palette mit Registerkarten 259 Reduzierbare Palette 263 Überprüfung für Formulare 252 und XML 657 Version des Frameworks 251 Widgets 252, 255 Widgets anpassen 264 Widgets CSS 264 Widgets gestalten 264 XML-Datensätze 252 Spry-Bereich 621, 662 Spry-Effekte 185 Spry-Tabelle 667 mit CSS formatieren 667 688
Index Spry-Überprüfung 304 Auswahl 312 Kontrollkästchen 311 Textbereich 311 Textfeld 305 Textfeld ohne Formatüberprüfung 312 Spry-Überprüfung Textfeld mit Formatüberprüfung 308 ohne Formatüberprüfung 306, 307, 309 Spry-Wiederholung 622, 665 Spry-Wiederholungsliste 622, 666 Spry-XML-Datensatz 621 SpyBot 356 SQL 441 Abfrage 442 Datei 432 Dump 433 Tabellendatensatz ansprechen 593 SQL-Abfrage 589 eigene einbinden 589 suchen 602 Tabellenstruktur 590 verschachteln 595 Zuordnungstabelle 591 SQL-Befehl bearbeiten 476 Stammordner lokaler 97 Standard-Bilderordner 98 Statusleiste 73, 80 Stilvorgabe anwenden 195 Stilwiedergabe 188 Strings 367 substr() 530 Suche GET-Arrays 603 Suchen und ersetzen 333 Suchformular 603 Suchfunktion 602 Suchmaschine 124, 165 dynamische Sites 352 Metaangaben 166 SWF-File 342 switch 377 Symbolleiste Kodierung 321 Synchronisieren Dateien 112 Syntax 54 fehlerhafte 322 T Tabelle 127 abfragen 470 Abmessung 131 aktualisieren 553 anwählen 129 Ausrichtung 131 auswählen 133 Bemaßungen 129 Breite 130 dynamische 623 Eigenschaften 130 einfügen 128 Fehler vermeiden 132 Größe festlegen 131 Hilfsmittel 129 Höhe 130 Nachteil 127 Parameter 128 Spaltenbreiten und Zeilenhöhen 133 Umrandungen 136 verschachteln 133 Vorteile 127 wiederholte 282 Zellauffüllung 131 Zelleigenschaften 132 Zellraum 131 zentrieren 137 Tabellenspalte abfragen 477 mehrere abfragen 477 Tag-Bibliothek 330 anlegen 329 bearbeiten 329 DTD importieren 640 Editor 329 Elemente-Definition 641 erstellen 330 Tag-Inspektor 329 Tags Attribute 329 automatisch vervollständigen 63 eigene anlegen 331 suchen 334 Tag-Selektor 196 689
Index Tag-Vorgaben 329 target= 268 Technik fortgeschrittene 589 Template 117 Templates-Ordner 277 Testserver 102, 417 installieren 383 Testserveransicht Verbindungsskripte anzeigen 452 Testserverbetrieb Ansicht 55, 56 Testserver-Ordner 414 TEXT 427 Text dynamischer 623 umfließt Bild 154 textarea 299 Textfeld 297 dynamisches 547, 623 Eigenschaften 297 verstecktes 297 Textformatierungen CSS 202 Textnavigation 360 TIME 427 TIMESTAMP 427 TINYBLOB 427 TINYINT 427 TINYTEXT 427 topmargin 118 Tracing-Bild 123 Tracing-Bilder 82 Transact-SQL 442 Transparentes GIF 135 U Überlappung verhindern 216 Überlauf 225 Überprüfen eigener Abfragen 488 Übertragung simulieren 458 Umbruch für Auswahl 328 Umgebungsvariable 460 Ungültiger Code hervorheben 322 Unicode 72 Unsichtbare Elemente 73 Unterseite schützen 579 Zugriffschutz 579 UPDATE 441, 443 Upload Dateigröße 433 URL-Parameter 484, 487, 513 erweitern 485 übergeben 484 URL-Präfix 414 URL-Variable 460, 461 Usability 361 User-Tracking 356 V Validator 74 VARCHAR 427 Variable 367, 369, 458 an URL anhängen 369 bereitstellen 459 definieren 459 externe anzeigen 464 mit Variablen arbeiten 459 nachträgliche Bearbeitung 460 neue hinzufügen 458 senden 458 übertragen 369 verketten 369 zur Fehlersuche nutzen 464 Variableninhalt 459 Variablentyp 460, 487 Variablenübergabe an SQL-Abfrage 484 Vektorgrafik 147 Verbindungsdaten eingeben 451 Verbindungsskript entfernen 453 Vergleichen von Dateien 106 Vergleichsoperatoren 371 Verhalten 177, 178, 179, 183 dynamisches 621 Effekte 185 Einfügeoptionen 613 fehlerhaftes 617 veraltetes 180 Verhaltensfenster 180 690
Index Verknüpfung 267 einbauen 267 Verlauf 83 Verlaufsfenster 83 Verlinkung 267 dokumentrelativ 98 root-relative 98 Verschachtelte Abfrage Schema 598 Verschachtelte Vorlage erstellen 281 Verschachteltes Frameset 165 Versionierung 113 Versteckte Datei anzeigen 452 Verstecktes Textfeld 297 Volltextsuche 602 Voreinstellungen 60 allgemein 60 Codeformat 62 Codehinweise 63 Codeumschreibung 64 CSS 62 Dateien vergleichen 66 Dateitypen/Editoren 67 neues Dokument 70 Vorgaben für neue Dokumente 70 Vorkenntnisse 27 Vorlage 117, 275 Adobe GoLive 277 aktualisieren 281 bearbeitbare Bereiche 278 bearbeitbare Bereiche definieren 275 Dokument aus Vorlage erstellen 278 entfernen 279 erstellen 276 kompatible 277 Mastervorlage 281 speichern 276 Tricks 281 verschachteln 281 verschachtelte 281 wiederholte Bereiche 281 wiederholte Tabelle 282 W WAMP 384 installieren 386 Warenkorb 354, 604 WCMS 353, 354 Web-Content-Management-System 353 WebDAV 101 Webdesign barrierefreies 208 Weblog 356 Webserver 357, 358, 383, 387 Mac 384 Startdatei 96 Zugangsdaten 379 Webserver starten 389 Website Aufbau 38 dynamische 353 Suchfunktion 602 zentrieren 137 Weiterleitung 578 Werbebanner mit Ebenen 216 Wert vergleichen 371 Werte vergleichen 551 WHERE 442, 481 while-schleife 374 Wiederholte Tabelle 282 Wiederholter Bereich 281, 490 mit AP-Elementen 492 Parameter ändern 480 Windows Vista PHP installieren 407 Windows XP 385 Word 345 Word-Dokument 345 einfügen 345 Word-Text 345 einfügen 345 WYSIWYG 29 X XAMPP installieren 387 konfigurieren 389 Startbildschirm 390 testen 389 unter Windows Vista 387 XHTML 70, 71 eigene Tags 330 XML 354, 629 automatisch nachladen 252 691
Index XML (Forts.) DTD 637 Processing Instructions 635 Tag-Attibute 634 Tags selbst definieren 630 Überprüfung 639 und CSS 632 XML-Attribut 634 XML-Datei im Browser 634 öffnen 634 tabellarisch ausgeben 667 XSLT anhängen 652 XML-Daten anbinden 657 XML-Dokument 187 Struktur 630 XMLHttpRequest-Objekt 657 XML-Quelle angeben 646 XPath 644 XPATH-Ausdrucksgenerator 649 XP-Firewall 385 XSLT 644 Datenquellen angegeben 650 Stylesheet anhängen 652 XSLT-Dokument anlegen 646 bedingte Bereiche 648 wiederholte Bereiche 648 XSLT-Fragment 646 XSL-Transformation 628 XSLT-Transformation clientseitig 646 mit PHP 653 serverseitig 653 Y YEAR 427 Z Zeichenkette 367 teilen 530 Zeichensatz 123 Zeilenhöhe 133 Zeilennummer 465 einblenden 322 Zeilenumbruch 62 einfügen 204 Zeit- und Datumsformat 427 Zeitstempel 576 Zellauffüllung 131 Zelle 132 Auffüllung 129 Breite 132 Größe 132 Inhalt ausrichten 132 Raum 129 teilen 132 verbinden 132, 133 Zelleigenschaft 132 Zellraum 131 Zentrieren AP-Element 239 Zentrierung 165 Ziel angeben 268 Z-Index 220 anzeigen 216 Zoomwerkzeug 80 Zugriff auf Seite beschränken 579 Zugriff auf den Server 414 Zugriffsebene 579, 583 definieren 580 in separater Tabelle abspeichern 583 Zugriffsrecht beschränken 579 steuern 577 Zugriffsrechte 361, 575 Zuordnungstabelle 591 Zustandsvorschau 306 Zahlenformat 427 Zeichenaddition 367 Zeichenformat 427 692