SlideShare ist ein Scribd-Unternehmen logo
Skriptsprachen
HTML, JavaScript & Co

Eine kurze Einführung und Übersicht
Inhalt
   HTML
   JavaScript
   Ajax
   CGI
   Perl
   PHP
   ASP
   ASP.net

                          2 of 58
HTML
   Seit 1990, aktuelle Version HTML 4.01
   baut auf HTTP auf
   keine Programmiersprache,
    sondern Datenbeschreibungs-
    sprache
     META-Sprache
   unterschiedliche Darstellung in verschiedenen
    Browsern

                                              3 of 58
CSS
   Seit 1996, aktuelle Version 2.0
   optische Gestaltung eines HTML-
    Dokumentes
   verwendet Formatvorlagen
   Beispiel: h2 {color:#0000FF;}
   zentrale Formatierung
   verschiedene Darstellung in verschiedenen
    Browsern

                                                4 of 58
XHTML
   Seit 2000, aktuelle Version 1.0
   Kombination aus HTML und XML
   Tags aus HTML wurden übernommen
   Tags sind case sensitiv, Regeln kommen von
    XML




                                             5 of 58
DHTML
   Kombination aus Java Script bzw.
    Skriptsprachen und HTML
   Ermöglicht die dynamische Änderung und
    dynamischen Aufbau einer HTML-Seite
   Beispiel: ausklappbare Navigationsleiste




                                               6 of 58
JavaScript
Eine kurze Einführung
JavaScript


   Seit 1995, aktuelle Version 1.5
   clientseitige Scriptsprache
     Programme werden vom Browser interpretiert
        und ausgeführt
   Plattformunabhängig, Browserabhängig
   Einsatz nur im Internet möglich



                                              8 of 58
Formularüberprüfung mit JavaScript
<SCRIPT><!--
 function pruefen() {
     var f = document.forms[0];
     var fehler = "“; //enthält die Bezeichnungen der nichtausgefüllten Felder
     // Überprüfung auf vollständige Ausfüllung
     if (f.Name.value=="") fehler += "Name";
      // Gegebenenfalls Fehlermeldung
     if (fehler != "") {
           var fehlertext =
           "Die folgenden Felder wurden nicht vollständig ausgefüllt:";
           fehlertext += fehler;
           alert(fehlertext);
           return false;
      }                                  <FORM ACTION="/cgi-bin/skript"
      return true;                       onSubmit="return pruefen()">
 }                                       Name:
//--></SCRIPT>                           <INPUT TYPE="TEXT" NAME="Name" />
                                         <INPUT TYPE="SUBMIT" VALUE="Absenden">
                                         </FORM>
                                                                        9 of 58
Ajax
Eine kurze Einführung
AJAX Überblick

   Seit Februar 2005
   keine neue Technologie, früher XML HTTP-Request
   Interaktive, Desktop-ähnliche Web-Anwendungen
   HTML-Seite wird bei HTTP-Protollanfrage nicht
    jedesmal neu geladen
   Teile einer HTML-Seite werden dynamisch
    nachgeladen
   Asynchrone Datenübertragung


                                                11 of 58
AJAX asynchrone Übertragung




                              12 of 58
AJAX – How it works




                      13 of 58
AJAX Beispiel
Schritt 1: XMLHTTPRequest-Object instanzieren
für IE:
      xmlHttp = new ActiveXObject "Microsoft.XMLHTTP" );
      xmlHttp = new ActiveXObject( "Msxml2.XMLHTTP.3.0"); // current versions: 3.0, 4.0, 5.0
für Mozilla:
      xmlHttp = new XMLHttpRequest();

Schritt 2: Request an den Server senden
if (req) {
       req.onreadystatechange = ResponseHandler;
       req.open(GET,url,true);
       req.setRequestHeader ("Content-Type", "application/x-www-form-urlencoded");
       req.send(send Data);
}

Schritt 3: Antwort des Servers verarbeiten (Response Handler)
if (req.readyState == 4)
        {
          if (req.status == 200)
           {
     data=req.responseText;
   }
}

                                                                                          14 of 58
AJAX – Vor- und Nachteile
Vorteile:
 HTML-Seite wird nicht komplett neu geladen

 schnellere Reaktion auf Benutzereingaben

 keine Übertragung von redundanten Informationen



Nachteile:
 Latenzzeit

 JavaScript muss aktiviert sein

 Beschränkungen durch HTTP


                                               15 of 58
Inhalt
   HTML
   JavaScript
   Ajax
   CGI
   Perl
   PHP
   ASP
   ASP.net

                          16 of 58
CGI
Grundlagen der Technologie
Was ist CGI
   Common Gateway Interface - Allgemeine
    Vermittlungsrechner-Schnittstelle
   Keine Skriptsprache
   Serverseitige Programmierschnittstelle
   Erlaubt Zugriff auf Programme und Skripte im Web
   CGI Skriptsprachen:
       Perl, C, Pascal, Visual Basic, Fortran, Dos Batch, Unix
        Shell Script, …



                                                              18 of 58
Aufruf von CGI-Skripten
   Formular
       <form action="/cgi-bin/guestbook.pl" method="get">
   Referenz
       <a href="/cgi-bin/statistik.pl">
   Grafikreferenz
       <img src="/cgi-bin/counter.pl">
   Server Side Include (SSI)
       <!--#exec cgi="/cgi-bin/counter.pl" -->
   Automatisches Laden (Forwarding)
       <meta http-equiv="refresh" content="0; URL=/cgi-bin/welcome.pl">


                                                                    19 of 58
Ablauf




         20 of 58
Perl
Eine kurze Einführung
Anforderungen
   Webserver für CGI
       www.apache.org
   Perl-Interpreter
       www.perl.org
   Editor
       OptiPerl (www.optiperl.com)
       wordpad…



                                      22 of 58
Aufbau einer Perl Datei
   Perl-Dateien enden i.d.R mit .pl
   Beginnen mit Shebang-Zeile #!/usr/bin/perl
   Variablen:
       global $var,
       lokal my $var
       Arrays @var[0]
   Bedingungen: if, elseif, else, unless
   Schleifen: while, until, do-while, do-until, for, foreach
   Programmsteuerung: continue, goto, last, next, redo
   C-Ähnliche Notationen und Arbeitsweise


                                                                23 of 58
Beispiel Hello World
#!/usr/local/bin/perl
$var = "Hello Worldn";
print "Mein erstes Script: $var";




                          Mein erstes Script: Hello World




                                                            24 of 58
Beispiel Email Validierung
<form action="http://www.adresse.de/cgi-bin/validator.pl" method="post">
    Adresse: <INPUT NAME="email" TYPE="TEXT" COLS=30 ALIGN=left>
    <input type="submit">
</form>

$mail = $FORM{'email'};
if ($mail =~ /(@.*@)|(..)|(@.)|(.@)|(^.)/ ||
$mail !~ /^.+@([?)[a-zA-Z0-9-.]+.([a-zA-Z]{2,3}|[0-9]{1,3})(]?)$/)
{
   print “Ungültige email-Adresse!n";
   exit;
}
else { print "Alles ok!n";}

                                               Ungültige email-Adresse!


                                                                           25 of 58
Was sind die Stärken
   Unterstützung vieler Plattformen
   Browserkompatibel
   Strukturierungsmechanismen
       objektorientiert
   Enormer Sprachumfang
       Integriert gesamten UNIX-Werkzeugkasten
   Reguläre Ausdrücke in Luxus-Version
   Hohe Performance

                                                  26 of 58
Was sind die Schwächen
   Knappe Codeanweisungen möglich
       Gefahr der Unlesbarkeit
   Sprachumfang schwer überschaubar
   Hohe Rechenbelastung des Server-Systems
   Schlechte Ausnutzung des Client-Systems
   Langsame Interaktion
       Jede Benutzeraktion muss über das Netz
        kommunizieren

                                                 27 of 58
Links
   Perl Seite: www.perl.org
   Referenz-Buch: Programming Perl, 3rd Edition
    von Larry Wall (dem Entwickler von Perl)




                                             28 of 58
Inhalt
   HTML
   JavaScript
   Ajax
   CGI
   Perl
   PHP
   ASP
   ASP.net

                          29 of 58
PHP
Eine kurze Einführung
Anforderungen und Installation
   Vorraussetzung:
       Web-Server mit PHP-Modul
   Webserver und Betriebssystem:
     Sehr viele (Alle…)
     Bekannteste Verbreitung: LAMP und WAMP
      (Linux Apache MySQL PHP, Windows …)
   Hoher
    Verbreitungsgrad:
Domains: 22172983
IP-Adr.: 1277375


                                               31 of 58
Verarbeitung einer Abfrage
                                                      Quelle: Wikipedia




  1) Anfrage von Client einer PHP-Seite mit Server
  2) Datei wird vom Webserver geladen
  3) Übergabe der Datei an den PHP-Interpreter
  4) Parsen der Datei und erzeugen der Ausgabe
  5) Rückgabe der Ausgabe an den Webserver
  6) Ausgabe wird von Webserver an Client geschickt
                                                          32 of 58
Aufbau PHP-Datei
   PHP-Dateien enden i.d.R mit .php
   „<?php“ oder „<?“ markieren den Anfang,
    „php?>“ oder „?>“ das Ende eines Codeteil
   Unmarkierte Blöcke werden nicht interpretiert
   Variablen: $var, Arrays: $var[0]
   C-Ähnliche Notationen und Arbeitsweise
   Prozedurale Scriptsprache



                                                    33 of 58
Beispiel Hallo Welt
<div style=“color: red; font-size: 40px;“>
<?php
    $mein_string = ‘Hallo Welt‘;
    echo $mein_string;
?>
</div>




                                             34 of 58
Verarbeiten von HTML-Formularen
<?php
    function checkData($data) {
          if (strlen(trim($data))>20) {
                       $data = substr($data,0,20);
          }
          return $data;
    }
    if ($_GET['data']) { $data = $_GET['data']; }
    else { $_POST['data']; }
    //kürzer: $data = $_GET['data'] != '' ? $data : $_POST['data'];
    $result = checkData($data);

?>
<html><body>
<p> Ergebnis der Übertragung: <? echo ($result); ?></p>
</html></body>




                                                                      35 of 58
Große Applikationen sind möglich
   Komplexe PHP-Anwendung: Typo3
   Komplett in PHP
   TypoScript
   FH Fulda setzt
    Typo3 ein




                                         36 of 58
Was PHP attraktiv macht
Vorteile:
 Hohe Verbreitung
 Sehr gute Datenbankanbindung und
   Webserverintegration
 Hohe Stabilität, Sehr gute
   Performance und Skalierbarkeit
 Einfach zu erlernen und zu integrieren, besonders
   mit HTML+JavaScript
 Open Source, große Community, gute Doku




                                                      37 of 58
Was PHP unattraktiv macht
Nachteile:
 Objektorientierung erst „richtig“ seit PHP5,
   PHP4 aber sicherer, stabiler und verbreiteter
 Wenige und meist schlecht dokumentierte
   Klassen-Frameworks wie z.B. bei .NET
 Wenige direkt integrierte Komponenten,
   vieles muss „zu Fuß“ erledigt werden oder
   in Community gesucht werden
 Prozudurale Skriptsprache




                                                   38 of 58
Weiterführendes
   PHP-Homepage: www.php.net
   Klassenbibliothek: pear.php.net
   Literatur: PHP 5, Grundlagen und
    Profiwissen von Jörg Krause (komplett
    online verfügbar bei Amazon)




                                            39 of 58
40 of 58
Inhalt
   HTML
   JavaScript
   Ajax
   CGI
   Perl
   PHP
   ASP
   ASP.net

                          41 of 58
ASP
Eine kurze Einführung
Active Server Pages (ASP)
   Serverseitige MS Technologie
   Erstellung von interaktiven und
    dynamischen Webseiten
   Inhalte sind Scripte, HTML
   Letzte Version 3.0
   Läuft innerhalb IIS




                                      43 of 58
Internet Information Server(IIS)
   Unterschiedliche Web-Dienste
   Integriert in Windows
       Windows 95, 98, NT 4.0 (PWS)
       Win 2000, XP Professional (IIS 5.0)
       Windows Server 2003 (IIS 6.0)
   WWW-Dienst führt ASP-,PHP-,.net-
    Applikationen aus




                                              44 of 58
Zugriff auf Win-Komponenten

                           Internet Information Server (IIS)


Request
           WWW-Server    SMTP-Server                ID-Manager   FTP-Server

Response

            ASPdatei
            Aspbefehle




            Windows- klassen und Komponente  COM- Objekte




                                                                              45 of 58
ASP Struktur

   Syntax     : <% Befehl %>
   Variablen : Dim arrayVaraible(4)
   Proceduren : SUB procedureName und END SUB
   Funktionen : Function functionName und END Function
   #include : Eine Datei wird eingebunden
   Global.asa : Globale Deklaration von Objekten
   Application Object



                                                      46 of 58
ASP-Features im Überblick
   Built in Objects
       Server object
       Session object
       Application object
   Installable Objects
       Browser Capabilities
       Content Linking
       File Access


                                      47 of 58
Resume
   Wurde durch PHP am Markt stark
    konkuriert und weniger Anwendung gefunden
   Wird vollständig durch ASP.net ersetzt
   Anbieter orientieren sich an .net und stellen
    ihre bestehenden ASP-Anwendungen auf
    ASP.net um



                                               48 of 58
Inhalt
   HTML
   JavaScript
   Ajax
   CGI
   Perl
   PHP
   ASP
   ASP.net

                          49 of 58
ASP.net
Eine kurze Einführung
Einführung
   Stärken von ASP.net
   Schwächen von ASP.net
   Das benötigte Basis-Know-how
   Orientierung an erprobten Standards
   Unterstützung verschiedener Sprachen




                                           51 of 58
.net Architektur




                   52 of 58
Komponenten von .net
   Common Language Runtime (CLR)
   Microsoft Intermediate Language (MSIL)
   Managed Code, unmanaged Code
   Common Type System (CTS)
   Just-in-Time-Compiler




                                             53 of 58
Komponenten der .net-Architektur(2)
   ASP.net
   Web Services
   VB- und C#-Compiler
   Assembly




                                          54 of 58
Die ASP.net Webseite
   Die @Page-Direktive

   Der serverseitige
    Skript-Block

   Der Block mit HTML-
    Code

   Prozess im Server

                                    55 of 58
Beispiel




              Ausgabe:
           Hallo Benjamin!



                       56 of 58
Links

   http://www.galileocomputing.de/openbook/asp/index.htm

   http://de.gotdotnet.com/quickstart/aspplus/doc/quickstart.asp
    x

   http://www.aspheute.com/default.asp

   http://asp.net



                                                              57 of 58
Ende
Vielen Dank für die Aufmerksamkeit!




                                      58 of 58

Weitere ähnliche Inhalte

PPT
Interprozesskommunikation mit PHP
PDF
Ein Gopher im Netz
PPT
Einsteiger Workshop
PDF
Referat T13 Javadoc
PPT
XML-Socket-Server zur Kommunikation mit Flash
PDF
Typo3 und Varnish
ODP
PhpStorm 6 Configuration for TYPO3
PDF
Automated Web 2.0 Testing
Interprozesskommunikation mit PHP
Ein Gopher im Netz
Einsteiger Workshop
Referat T13 Javadoc
XML-Socket-Server zur Kommunikation mit Flash
Typo3 und Varnish
PhpStorm 6 Configuration for TYPO3
Automated Web 2.0 Testing

Ähnlich wie Übersicht Skriptsprachen (20)

ODP
Php Tutorium
PDF
Web Entwicklung mit PHP - Teil 1
PPTX
Object-orientied way of using mysqli interface - Workshop
PDF
PHP Sucks?!
PDF
Flash cs3, ajax und php
PDF
382726314 X Php5 In 14 Tagen (Ddt)
PDF
PHP 5.3 - da war doch was?
PDF
Php Schulung
PDF
Java Servlets und AJAX
PDF
Webentwicklung mit PHP und MySQL
PDF
Webanwendungen - Installation, Konfiguration und Administration
ODP
PDF
PDF
Emanzipiertes JavaScript und das Coming Out der Flash Community
PPTX
SoSe 2013 | IT-Zertifikat: AT II - 00_Organisatorisches
PPT
PHP auf IBM Plattformen
PDF
Programmiertechniken
KEY
PHP5 und Oracle
PPT
PHPblue LOS!NRW
PDF
Mein Haus, mein Auto, mein Backend
Php Tutorium
Web Entwicklung mit PHP - Teil 1
Object-orientied way of using mysqli interface - Workshop
PHP Sucks?!
Flash cs3, ajax und php
382726314 X Php5 In 14 Tagen (Ddt)
PHP 5.3 - da war doch was?
Php Schulung
Java Servlets und AJAX
Webentwicklung mit PHP und MySQL
Webanwendungen - Installation, Konfiguration und Administration
Emanzipiertes JavaScript und das Coming Out der Flash Community
SoSe 2013 | IT-Zertifikat: AT II - 00_Organisatorisches
PHP auf IBM Plattformen
Programmiertechniken
PHP5 und Oracle
PHPblue LOS!NRW
Mein Haus, mein Auto, mein Backend
Anzeige

Mehr von A. LE (9)

PDF
Master Thesis - Algorithm for pattern recognition
PDF
Publication - The feasibility of gaze tracking for “mind reading” during search
PPTX
Schulug Grundlagen SAP BI / BW
PPT
Ergebnisse Simulation eines Verkehrsnetzes mit GPSS/H
PDF
Simulation eines Verkehrsnetzes mit GPSS/H
PPT
Prasentation Managed DirectX
PDF
Managed DirectX
PDF
Elektronische Kataloge als herzstück von E-Business Systemen
PPT
Introduction into Search Engines and Information Retrieval
Master Thesis - Algorithm for pattern recognition
Publication - The feasibility of gaze tracking for “mind reading” during search
Schulug Grundlagen SAP BI / BW
Ergebnisse Simulation eines Verkehrsnetzes mit GPSS/H
Simulation eines Verkehrsnetzes mit GPSS/H
Prasentation Managed DirectX
Managed DirectX
Elektronische Kataloge als herzstück von E-Business Systemen
Introduction into Search Engines and Information Retrieval
Anzeige

Übersicht Skriptsprachen

  • 1. Skriptsprachen HTML, JavaScript & Co Eine kurze Einführung und Übersicht
  • 2. Inhalt  HTML  JavaScript  Ajax  CGI  Perl  PHP  ASP  ASP.net 2 of 58
  • 3. HTML  Seit 1990, aktuelle Version HTML 4.01  baut auf HTTP auf  keine Programmiersprache, sondern Datenbeschreibungs- sprache  META-Sprache  unterschiedliche Darstellung in verschiedenen Browsern 3 of 58
  • 4. CSS  Seit 1996, aktuelle Version 2.0  optische Gestaltung eines HTML- Dokumentes  verwendet Formatvorlagen  Beispiel: h2 {color:#0000FF;}  zentrale Formatierung  verschiedene Darstellung in verschiedenen Browsern 4 of 58
  • 5. XHTML  Seit 2000, aktuelle Version 1.0  Kombination aus HTML und XML  Tags aus HTML wurden übernommen  Tags sind case sensitiv, Regeln kommen von XML 5 of 58
  • 6. DHTML  Kombination aus Java Script bzw. Skriptsprachen und HTML  Ermöglicht die dynamische Änderung und dynamischen Aufbau einer HTML-Seite  Beispiel: ausklappbare Navigationsleiste 6 of 58
  • 8. JavaScript  Seit 1995, aktuelle Version 1.5  clientseitige Scriptsprache  Programme werden vom Browser interpretiert und ausgeführt  Plattformunabhängig, Browserabhängig  Einsatz nur im Internet möglich 8 of 58
  • 9. Formularüberprüfung mit JavaScript <SCRIPT><!-- function pruefen() { var f = document.forms[0]; var fehler = "“; //enthält die Bezeichnungen der nichtausgefüllten Felder // Überprüfung auf vollständige Ausfüllung if (f.Name.value=="") fehler += "Name"; // Gegebenenfalls Fehlermeldung if (fehler != "") { var fehlertext = "Die folgenden Felder wurden nicht vollständig ausgefüllt:"; fehlertext += fehler; alert(fehlertext); return false; } <FORM ACTION="/cgi-bin/skript" return true; onSubmit="return pruefen()"> } Name: //--></SCRIPT> <INPUT TYPE="TEXT" NAME="Name" /> <INPUT TYPE="SUBMIT" VALUE="Absenden"> </FORM> 9 of 58
  • 11. AJAX Überblick  Seit Februar 2005  keine neue Technologie, früher XML HTTP-Request  Interaktive, Desktop-ähnliche Web-Anwendungen  HTML-Seite wird bei HTTP-Protollanfrage nicht jedesmal neu geladen  Teile einer HTML-Seite werden dynamisch nachgeladen  Asynchrone Datenübertragung 11 of 58
  • 13. AJAX – How it works 13 of 58
  • 14. AJAX Beispiel Schritt 1: XMLHTTPRequest-Object instanzieren für IE: xmlHttp = new ActiveXObject "Microsoft.XMLHTTP" ); xmlHttp = new ActiveXObject( "Msxml2.XMLHTTP.3.0"); // current versions: 3.0, 4.0, 5.0 für Mozilla: xmlHttp = new XMLHttpRequest(); Schritt 2: Request an den Server senden if (req) { req.onreadystatechange = ResponseHandler; req.open(GET,url,true); req.setRequestHeader ("Content-Type", "application/x-www-form-urlencoded"); req.send(send Data); } Schritt 3: Antwort des Servers verarbeiten (Response Handler) if (req.readyState == 4) { if (req.status == 200) { data=req.responseText; } } 14 of 58
  • 15. AJAX – Vor- und Nachteile Vorteile:  HTML-Seite wird nicht komplett neu geladen  schnellere Reaktion auf Benutzereingaben  keine Übertragung von redundanten Informationen Nachteile:  Latenzzeit  JavaScript muss aktiviert sein  Beschränkungen durch HTTP 15 of 58
  • 16. Inhalt  HTML  JavaScript  Ajax  CGI  Perl  PHP  ASP  ASP.net 16 of 58
  • 18. Was ist CGI  Common Gateway Interface - Allgemeine Vermittlungsrechner-Schnittstelle  Keine Skriptsprache  Serverseitige Programmierschnittstelle  Erlaubt Zugriff auf Programme und Skripte im Web  CGI Skriptsprachen:  Perl, C, Pascal, Visual Basic, Fortran, Dos Batch, Unix Shell Script, … 18 of 58
  • 19. Aufruf von CGI-Skripten  Formular  <form action="/cgi-bin/guestbook.pl" method="get">  Referenz  <a href="/cgi-bin/statistik.pl">  Grafikreferenz  <img src="/cgi-bin/counter.pl">  Server Side Include (SSI)  <!--#exec cgi="/cgi-bin/counter.pl" -->  Automatisches Laden (Forwarding)  <meta http-equiv="refresh" content="0; URL=/cgi-bin/welcome.pl"> 19 of 58
  • 20. Ablauf 20 of 58
  • 22. Anforderungen  Webserver für CGI  www.apache.org  Perl-Interpreter  www.perl.org  Editor  OptiPerl (www.optiperl.com)  wordpad… 22 of 58
  • 23. Aufbau einer Perl Datei  Perl-Dateien enden i.d.R mit .pl  Beginnen mit Shebang-Zeile #!/usr/bin/perl  Variablen:  global $var,  lokal my $var  Arrays @var[0]  Bedingungen: if, elseif, else, unless  Schleifen: while, until, do-while, do-until, for, foreach  Programmsteuerung: continue, goto, last, next, redo  C-Ähnliche Notationen und Arbeitsweise 23 of 58
  • 24. Beispiel Hello World #!/usr/local/bin/perl $var = "Hello Worldn"; print "Mein erstes Script: $var"; Mein erstes Script: Hello World 24 of 58
  • 25. Beispiel Email Validierung <form action="http://www.adresse.de/cgi-bin/validator.pl" method="post"> Adresse: <INPUT NAME="email" TYPE="TEXT" COLS=30 ALIGN=left> <input type="submit"> </form> $mail = $FORM{'email'}; if ($mail =~ /(@.*@)|(..)|(@.)|(.@)|(^.)/ || $mail !~ /^.+@([?)[a-zA-Z0-9-.]+.([a-zA-Z]{2,3}|[0-9]{1,3})(]?)$/) { print “Ungültige email-Adresse!n"; exit; } else { print "Alles ok!n";} Ungültige email-Adresse! 25 of 58
  • 26. Was sind die Stärken  Unterstützung vieler Plattformen  Browserkompatibel  Strukturierungsmechanismen  objektorientiert  Enormer Sprachumfang  Integriert gesamten UNIX-Werkzeugkasten  Reguläre Ausdrücke in Luxus-Version  Hohe Performance 26 of 58
  • 27. Was sind die Schwächen  Knappe Codeanweisungen möglich  Gefahr der Unlesbarkeit  Sprachumfang schwer überschaubar  Hohe Rechenbelastung des Server-Systems  Schlechte Ausnutzung des Client-Systems  Langsame Interaktion  Jede Benutzeraktion muss über das Netz kommunizieren 27 of 58
  • 28. Links  Perl Seite: www.perl.org  Referenz-Buch: Programming Perl, 3rd Edition von Larry Wall (dem Entwickler von Perl) 28 of 58
  • 29. Inhalt  HTML  JavaScript  Ajax  CGI  Perl  PHP  ASP  ASP.net 29 of 58
  • 31. Anforderungen und Installation  Vorraussetzung:  Web-Server mit PHP-Modul  Webserver und Betriebssystem:  Sehr viele (Alle…)  Bekannteste Verbreitung: LAMP und WAMP (Linux Apache MySQL PHP, Windows …)  Hoher Verbreitungsgrad: Domains: 22172983 IP-Adr.: 1277375 31 of 58
  • 32. Verarbeitung einer Abfrage Quelle: Wikipedia 1) Anfrage von Client einer PHP-Seite mit Server 2) Datei wird vom Webserver geladen 3) Übergabe der Datei an den PHP-Interpreter 4) Parsen der Datei und erzeugen der Ausgabe 5) Rückgabe der Ausgabe an den Webserver 6) Ausgabe wird von Webserver an Client geschickt 32 of 58
  • 33. Aufbau PHP-Datei  PHP-Dateien enden i.d.R mit .php  „<?php“ oder „<?“ markieren den Anfang, „php?>“ oder „?>“ das Ende eines Codeteil  Unmarkierte Blöcke werden nicht interpretiert  Variablen: $var, Arrays: $var[0]  C-Ähnliche Notationen und Arbeitsweise  Prozedurale Scriptsprache 33 of 58
  • 34. Beispiel Hallo Welt <div style=“color: red; font-size: 40px;“> <?php $mein_string = ‘Hallo Welt‘; echo $mein_string; ?> </div> 34 of 58
  • 35. Verarbeiten von HTML-Formularen <?php function checkData($data) { if (strlen(trim($data))>20) { $data = substr($data,0,20); } return $data; } if ($_GET['data']) { $data = $_GET['data']; } else { $_POST['data']; } //kürzer: $data = $_GET['data'] != '' ? $data : $_POST['data']; $result = checkData($data); ?> <html><body> <p> Ergebnis der Übertragung: <? echo ($result); ?></p> </html></body> 35 of 58
  • 36. Große Applikationen sind möglich  Komplexe PHP-Anwendung: Typo3  Komplett in PHP  TypoScript  FH Fulda setzt Typo3 ein 36 of 58
  • 37. Was PHP attraktiv macht Vorteile:  Hohe Verbreitung  Sehr gute Datenbankanbindung und Webserverintegration  Hohe Stabilität, Sehr gute Performance und Skalierbarkeit  Einfach zu erlernen und zu integrieren, besonders mit HTML+JavaScript  Open Source, große Community, gute Doku 37 of 58
  • 38. Was PHP unattraktiv macht Nachteile:  Objektorientierung erst „richtig“ seit PHP5, PHP4 aber sicherer, stabiler und verbreiteter  Wenige und meist schlecht dokumentierte Klassen-Frameworks wie z.B. bei .NET  Wenige direkt integrierte Komponenten, vieles muss „zu Fuß“ erledigt werden oder in Community gesucht werden  Prozudurale Skriptsprache 38 of 58
  • 39. Weiterführendes  PHP-Homepage: www.php.net  Klassenbibliothek: pear.php.net  Literatur: PHP 5, Grundlagen und Profiwissen von Jörg Krause (komplett online verfügbar bei Amazon) 39 of 58
  • 41. Inhalt  HTML  JavaScript  Ajax  CGI  Perl  PHP  ASP  ASP.net 41 of 58
  • 43. Active Server Pages (ASP)  Serverseitige MS Technologie  Erstellung von interaktiven und dynamischen Webseiten  Inhalte sind Scripte, HTML  Letzte Version 3.0  Läuft innerhalb IIS 43 of 58
  • 44. Internet Information Server(IIS)  Unterschiedliche Web-Dienste  Integriert in Windows  Windows 95, 98, NT 4.0 (PWS)  Win 2000, XP Professional (IIS 5.0)  Windows Server 2003 (IIS 6.0)  WWW-Dienst führt ASP-,PHP-,.net- Applikationen aus 44 of 58
  • 45. Zugriff auf Win-Komponenten Internet Information Server (IIS) Request WWW-Server SMTP-Server ID-Manager FTP-Server Response ASPdatei Aspbefehle Windows- klassen und Komponente  COM- Objekte 45 of 58
  • 46. ASP Struktur  Syntax : <% Befehl %>  Variablen : Dim arrayVaraible(4)  Proceduren : SUB procedureName und END SUB  Funktionen : Function functionName und END Function  #include : Eine Datei wird eingebunden  Global.asa : Globale Deklaration von Objekten  Application Object 46 of 58
  • 47. ASP-Features im Überblick  Built in Objects  Server object  Session object  Application object  Installable Objects  Browser Capabilities  Content Linking  File Access 47 of 58
  • 48. Resume  Wurde durch PHP am Markt stark konkuriert und weniger Anwendung gefunden  Wird vollständig durch ASP.net ersetzt  Anbieter orientieren sich an .net und stellen ihre bestehenden ASP-Anwendungen auf ASP.net um 48 of 58
  • 49. Inhalt  HTML  JavaScript  Ajax  CGI  Perl  PHP  ASP  ASP.net 49 of 58
  • 51. Einführung  Stärken von ASP.net  Schwächen von ASP.net  Das benötigte Basis-Know-how  Orientierung an erprobten Standards  Unterstützung verschiedener Sprachen 51 of 58
  • 52. .net Architektur 52 of 58
  • 53. Komponenten von .net  Common Language Runtime (CLR)  Microsoft Intermediate Language (MSIL)  Managed Code, unmanaged Code  Common Type System (CTS)  Just-in-Time-Compiler 53 of 58
  • 54. Komponenten der .net-Architektur(2)  ASP.net  Web Services  VB- und C#-Compiler  Assembly 54 of 58
  • 55. Die ASP.net Webseite  Die @Page-Direktive  Der serverseitige Skript-Block  Der Block mit HTML- Code  Prozess im Server 55 of 58
  • 56. Beispiel Ausgabe: Hallo Benjamin! 56 of 58
  • 57. Links  http://www.galileocomputing.de/openbook/asp/index.htm  http://de.gotdotnet.com/quickstart/aspplus/doc/quickstart.asp x  http://www.aspheute.com/default.asp  http://asp.net 57 of 58
  • 58. Ende Vielen Dank für die Aufmerksamkeit! 58 of 58