Praktikum 27. Juni 2003 Projekt. Einführung Das Praktikum endet mit einem Projekt: Erstellt einen Kneipenführer! Am Ende wird der Kneipenführer vielleicht.

Slides:



Advertisements
Ähnliche Präsentationen
Meine Welt auf einen Blick erleben.
Advertisements

Imperative Programmierung
ISA Server User Group Herzlich Willkommen zum 8. Münchner Treffen 27. Juli 2006 Unterschleißheim Dieter Rauscher [MVP ISA] * Christian.
Entwicklung UnivIS-Anbindung auf Basis von PHP und DOM-XML
.NET-PHP Projekt Präsentation
ASP.NET Tips & Tricks Uwe Baumann
Was ist neu in VS 2003 ? Ein Überblick. Bernd Marquardt Software & Consulting
HMI / HMI-SPS XV400 HMI oder HMI-PLC – die CompactFlashTM entscheidet
Kurze Einführung in ASP
der Universität Oldenburg
Browser Von Anna Zietek und Peter Paulus Verwendung Aufbau Anwendung.
Datenbankanbindung mit ASP Wilhelm-Schickard-Schule Tübingen
Oracle WebServer - Einführung. © Prof. T. Kudraß, HTWK Leipzig Oracle Web Application Server HTML WebServer ® File system Static HTML PL/SQL Packages.
ilmenau.de Exploiting Pocket PC. ilmenau.de Exploiting Pocket PC PocketPC existiert seit über 5 Jahren (Windows CE seit ca. 10)
Treffen mit Siemens Siemens: Werner Ahrens Volkmar Morisse Projektgruppe: Ludger Lecke Christian Platta Florian Pepping Themen:
Introducing the .NET Framework
Schiller-Gymnasium Hof Manuel Friedrich OStR, PHP – Variablen und Formulardaten speichern! © 2010 Manuel Friedrich - Wie.
Mono und andere freie.NET Implementierungen. Implementierungen Microsoft.NET Framework Win32, Win64? Microsoft.NET Compact Framework WinCE (Mobile, Phone)
Microsoft eMbedded Visual Basic Entwicklung von Anwendungen für den Pocket PC Seminarvortrag Mobile Computing Holger Otte.
Erstellen von WebServices mit Visual FoxPro 9.0
Uwe Habermann VFX 10.0 Visual Extend Produktaktivierung Venelina Jordanova
Uwe Habermann VFX 10.0 Visual Extend Produktaktivierung.
Jetzt lernen wir.
Internet-Datenbanken und ASP Eine Einführung von J.Sommer & A.Vortisch.
Marian Grzesik, Software2Business GmbH. Agenda 1. Bing Maps Accont erstellen 2. Bing Maps SDK downloaden 3. Beispiele a. Basic Applikation b. Navigation.
Infrastruktur traditionelles webhosting meilensteine konzepte zusätzliche dienste server-landschaft "traditionelles webhosting" versus "WCMS" informations-quellen.
Wir bauen uns eine Webapplikation!
Textdateien. Definition Die Textdateien sind eine Sammlung von homogene Daten(vom selben Typ), die auf einer externen Gerät gespeichert sind und durch.
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 11 Folie 2 Microsoft Internet Information Services (IIS)
Best Practices in der Datenbank-programmierung
Einführung / Geschichte Einführung / Geschichte Motivation Motivation Beispiel Beispiel Architektur / Komponenten Architektur / Komponenten Konfiguration.
Projektarbeit PHP 5.3 / MySQL & Content Management Systems
Consulting and Solutions.NET Vortragsreihe – Vorstellung der Referenten Happy Arts Software Markus Kämmerer IT-Erfahrung seit 1987,
Präsentation von Sonja Pathe
PHP und MYSQL am Organisatorisches Der komplette Kurs im Schnelldurchgang Bewertung von wichtig und unwichtig Historisch Kulturwissenschaftliche.
UNIVERSITÄT ZU KÖLN HISTORISCH-KULTURWISSENSCHAFTLICHE INFORMATIONSVERARBEITUNG REUSABLE - CONTENT SS 2013 MARIA WAGNER ReST.
Bedeutung von Internet-Technologien
Your name Bedeutung von Internet- Technologien Gruppe 1 Andreas Feuerstein Philipp Hochratner Christian Weinzinger.
Entwicklung verteilter Anwendungen II, SS 13 Prof. Dr. Herrad Schmidt SS 13 Kapitel 4 Folie 2 REST Web Services (1)
Entwicklung verteilter Anwendungen II, SS 13 Prof. Dr. Herrad Schmidt SS 13 Kapitel 2 Folie 2 ASP.NET HTTP-Handler (1)
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 8 Folie 2 ASP.NET Zustandsverwaltung
Folgendes kann missbraucht werden: formulare unverschlüsselte login-informationen ungeschützte includes SQL-injection reto ambühler
Vergleich verschiedener Konzepte für das Software Engineering Praktikum.
… und was man damit machen kann.
Partner ready ppt Software Assurance Benefits 3.5 Software Assurance Änderungen wirksam zum 11. November 2007 Katharina Hensle, Software Assurance Lead.
Ispirer Systems Präsentation des Unternehmens Copyright (c) Ispirer Systems Ltd. Alle Rechte vorbehalten.
Agenda Rückblick 2. Aufbau der Software Benutzeroberfläche 4. Ausblick
Datenanbindung in Webapplikationen
Einführung in PHP.
Einführung in PHP 5.
Webseiten mit PHP, SQL, XML und Webservices Anhand praktischer Beispiele.
Englisch-Deutsch Wörterbuch
SQL Server nach MySQL Datenbank-Migration SQLWays – Software für Migration Präsentation Copyright (c) Ispirer Systems Ltd. Alle.
Warum IIS? Best of Microsoft Webserver
Kursdokumentenmanagement. Inhalt Zielgruppe Anwendungs- breiche Vorteile der Lösung Kosten Testen der Software Funktionsweise und Voraus- setzungen Anwendungs-
Masc CJD Jugenddorf Offenburg Die Installation ProfilAC … powered by Polikles ® 25. bis 27. Januar 2005 masc ag, rotkreuz
Projekt Pokémon (CSL) Evaluation Technologien / Entwicklungsumgebungen Schlusspräsentation, Philip Iezzi, BDLI 2.
Neue Speichermedien für Datenbanken
Kaseya Virtual System Administrator Produkt Update 7.0 Rocco van der Zwet Copyright ©2014 Kaseya 1.
25. Oktober 2006Autor: Walter Leuenberger Computeria Urdorf Treff vom 4. Oktober 2006 Print Lösungen Zwei interessante «Helferlein»
Grundlagen der Internetadresse
prof. dr. dieter steinmannfachhochschule trier © prof. dr. dieter steinmann Folie 1 vom Montag, 30. März 2015.
Partner Präsentation Interaktives Planen in der Fertigung.
12. Juli 2006Autor: Walter Leuenberger Computeria Urdorf Treff vom 12. Juli 2006 Outlook und Outlook Express nicht nur zum en.
Funktionsweise von CMS
Webserver Apache & Xampp Referenten: Elena, Luziano und Sükran
Novell Server mit NetWare 6.5 und Windows 2003 Server Bernd Holzmann
Seminar Internettechnologie Prof. Dr. Lutz Wegner Julia Mikov WS 06/07
Business Process Excuction Lanaguage
 Präsentation transkript:

Praktikum 27. Juni 2003 Projekt

Einführung Das Praktikum endet mit einem Projekt: Erstellt einen Kneipenführer! Am Ende wird der Kneipenführer vielleicht für das NUKATH-Projekt benutzt werden. 1. Schema Definition 2. PocketPC Anwendung 3. Web Service für Daten-Upload 4. Zusammentragen der Daten 5. Kneipenführer Web-Seite (benutzt Web Services) 6. Falls ihr Zeit habt: …

Timeline Heute: erste Treffen Letzte Treffen (25 Juli) Zusammentragen der Daten vollständig (11 Juli) PDAs Zurückgeben Nächste Freitag: PDA- Anwendung und Daten- Upload Web Service fertig gestellt

Das Szenario Kneipenführer Web service Datenbank Web Sites Mobile Db Gruppe 1 Mobile Db Gruppe 2 Mobile Db Gruppe 3 Mobile Db Gruppe 4 HTTP POST SOAP

Schema Wir brauchen ein XML-Schema z.B. Name der Kneipe, Adresse, Bierangebot (alkoholfreie Biere, Weizenbier, belgische Biere), Musik, Atmosphäre, Telefonnummer, UID (Eindeutige Identifikator)... Stadtplan? Landmarke?

Compaq iPAQ PocketPC StrongARM/XScale, MIPS, oder SH3 Prozessor iPAQ StrongArm >200MHz 240 x 320 LCD Bildschirm 32 – 64 Mb Speicher (RAM) 16 Mb flüchtiger Speicher (Flash ROM)

Web Server Installation Es gibt mehrere Web Server für den Pocket PC, z.b. Apache und IIS + ASP (kommt mit Microsoft SQL Dashboard) Wir benutzen IIS Heute existiert außerdem IIS.Net für Pocket PC, unter anderem – aber die Installation ist kompliziert und es ist nichts vorkompiliert...

Forts. Installation E C1E – SQL Dashboardhttp:// E C1E b.htm - Installation HOWTOhttp:// b.htm - Installation HOWTOhttp://members.cox.net/nnsysdev/ppcwebserver.htm Weicher Neustart (Soft Reset): zum Neustart des Pocket PC drücken Sie mit dem Stift die Soft-Reset-Taste Harter Neustart (Hard Reset): Zum harten Neustart drücken Sie die Soft-Reset-Taste + Sync-Taste+ Kalender-Taste und warten Sie 5 Sek. ALLE DATEIEN WERDEN GELÖSCHT

Die VBScript Programmiersprache Alt, unkompliziert, unvollständig Keine objekte, dynamische Arrays, usw. Einführung: Hello.asp

Beispiele Kommentare: C# // Hier ist ein Kommentar VBREM Hier ist ein Kommentar Variablen definieren C# string Mystring VB Dim Mystring rem Dieses VBscript ist weakly typed! Escaping anführungszeichen C# Mystring=I am a \string\ with quotes VBMystring=I am a string with quotes Variablen ausdrucken C#Console.Write(Variable=+Mystring) VB Response.Write Variable= & Mystring Resultat: Variable=I am a string with quotes

Vergleiche, Operatoren C# If (variable==null) {...} == > < != >= <= VBScript If Variable is Nothing Then... = > < <> >= <=

Iteration - Beispiele For i=0 to 20 step +2 Response.Write i& Next Dim myArray(10) Dim i For i=0 to 9 step +1 myArray(i)=10-i Response.Write i& Next While i<10 i=i+1 Wend Do while not i>10 i=i+1 If i=5 Then Exit Do End If Loop

Prozeduren C# void myFunction(){ } int myFunction(){ // oder anderen Typ return int_value } VBScript Sub myFunction() End Sub Function myFunction()... myFunction=returnvalue End Function

Try/Catch // C# try { // Code hier einsetzen... } catch { //error=true } If(!error){ // No error occurred } REM VBScript Dim wErr On Error Resume Next Rem Put code here wErr= Err.Number On Error Goto 0 If wErr <> 0 Then Rem No error occurred End If

String manipulation Dim mystring=Hello worldrem mystring definieren mystring2=Replace(mystring,world,Karlsruhe) rem mystring2 ist Hello Karlsruhe mylength=Len(mystring)rem die Lange von String bestimmen mystring2=Left(mystring,5) rem mystring2 ist jetzt Hello mystring2=Right(mystring,5)rem mystring2 ist jetzt world Die Mid() Funktion ist nicht verfügbar in dieser Ausführung – benutze Left(Right, ), ) Chr(eine_Zahl) liefert den Buchstaben, der mit eine_Zahl übereinstimmt Char(Buchstabe) liefert den character code des Buchstaben in der Funktion Es gibt verschiedene VBScript String-Konstanten:

HTTP Get/Post Um Variablen von der HTTP Get Methode abzurufen: Request.Querystring(variableName) Um Variablen von der HTTP Post Methode abzurufen : Request.Form( variableName) Diejenigen, die VBScript kennen, könnten die Idee haben, die For Each Field In Request.Form Methode anzuwenden. Diese Methode ist aber nicht in diese ASP-Programm definiert!

Datenbank-Zugang Ein verfügbares Objekt ist das ADOCE Recordset Dim dbObject=CreateObject(ADOCE.RecordSet.3.0) Nutzliche Funktionen: –dbObject.Open dbname,, 2, 3 –dbObject.MoveFirstrem zum Beginn des Recordsets springen –dbObject.MoveNextrem springt zum nächsten Eintrag (EOF wird angezeigt, wenn es sich um den letzten Eintrag handelt) –dbObject.Closerem das Recordset schließen –dbObject.AddNew rem neuer Eintrag –dbObject.Fields(ColumnName)=Value –dbObject.Updaterem Recordset aktualisieren

Beispiele Do While Not dbObject.EOF Response.Write dbObject(0).Name & _ & dbObject(0).Value Response.Write dbObject.MoveNext Loop

Forts. Datenbank, SQL Um das Recordset zu laden oder zu benutzen,muß man mit der Db mit SQL kommunizieren Hier sind einige Beispiele: –Löschen SQLquery=Delete from tablename where columnname=&value –Eine Tabelle kreieren SQLquery=Create table tablename (Id INT, pubname Text) –Nach Einträgen suchen SQLquery=Select * from tablename [sort by column] –Nach einem bestimmten Eintrag suchen SQLquery=Select * from tablename where column=&uniquevalue –Sortieren: ADO besitzt normalerweise eine Sortier-Option, dieser ist aber in diesem ASP-Programm nicht verfügbar. Stattdessen benutze sort by column bei der select Abfrage.

CreateObject & andere Funktionen Generell ist VB/ASP weniger limitiert Weil sehr wenige Funktionen in diesem ASP Programm verfügbar sind, ist man gezwungen mit wenig Mitteln viel zu machen. Versucht nicht die Grenzen des ASP Programmes zu finden – es sind genug Angaben gemacht um die erforderlichen Resultate zu erzielen. Es gibt ein komplettes, funktionstüchtiges Beispiel auf der Praktikums-Seite. SCHREIBT ES NICHT EINFACH NUR AB! Es benutzt CSV für die interne Datenspeicherung und ist einerseits falsch, und andererseits sofort zu erkennen ;-)

Notwendige Scripts 1.Kneipen-Info-Tabelle Dieses Script versucht, beim Laden die Tabelle zu kreieren. Sowohl die erfolgreiche Durchführung als auch jegliche Fehler, die auftreten, sollen angezeigt werden. 2.HTTP Post neuer Eintrag Formular Dieses Formular sollte die Kneipen-Informationen zu dem... Script senden (3). Fals genügend Zeit bleibt, versucht, das Script so zu designen, dass man es außerdem zum Editieren von bereits existierenden Einträgen benutzen kann... 3.Script für Einträge/ Updates Akzeptiert Daten von Formular (2). Öffnet die Verbindung zur Datenbank. Generiert eine unique ID. Fügt eine Gruppe ID hinzu. Löscht verbotene Zeichen, falls vorhanden, im input. Fügt Werte zur Datenbank hinzu, mit der generierten unique ID. (Andernfalls, wenn es sich um ein Update handelt, löscht es den Original-Eintrag, um ihn danach als neuen Eintrag mit der selben unique ID wieder einzufügen.)

Forts. Scripts 4.Löschen von einem Eintrag Benutzt HTTP Get, um die Unique ID zu lesen, um danach den korrespondierenden Eintrag mit SQL Query aus der Datenbank zu löschen. Zeigt an: Löschvorgang erfolgreich bzw. Fehler beim Löschvorgang 5.Einträge anzeigen Liest alle Einträge der Datenbank aus und zeigt sie auf dem Bildschirm angemessen an, zusammen mit Links zu (4), (6) und (7) (optional). 6.Details anzeigen Liest alle Details eines gegebenen Eintrags aus der Datenbank, indem es die Unique ID benutzt, um ihn zu lokalisieren und ihn danach angemessen auf dem Bildschirm darzustellen (z.B. indem es das Formular (2) zum erneuten Eintrag der Werte benutzt). 7.Upload Script Dieses Formular schickt alle Daten von der Datenbank, codiert als ein einzelnes XML-String, als eine versteckte Variable. Die XML-Daten werden zu einem Web Service geschickt, der den XML-String speichert.

Web Service Um Daten zu laden –Weil iPAQ nicht direkt in der Lage ist, Web Services zu benutzen, kann es nur auf standard HTTP – POST und GET zurückgreifen. –Deswegen benutzen wir HTTP POST, um Daten zu laden. –Das ist möglich durch Verändern des,web.config Files – dadurch erwartet es einfach HTTP POST input. Der Web Service –Der Web Service empfängt und speichert einen Text-String – davon abgesehen, liest oder benutzt er den Text-String nicht weiter. –Denkt daran, eure versteckte Variable so zu nennen, wie es der Web Service erwartet!

Zusammentragen der Daten Logistik klären... 2 Gruppen, Daten- und PDA- Gruppe Die PDA-Gruppe arbeitet hier Aufteilung innerhalb Gruppe? Daten-Gruppe ??? Aufteilung innerhalb Gruppe ? Hotspots... Vermeidet doppelte Einträge! Ist es zweckmäßig, zur Lokalisierung der Kneipen Karlsruhe in Quadranten aufzuteilen? Und jetzt: Auf gehts in die Kneipe! ;-)