FMK2014: Custom Web Publishing (mit PHP) und WebDirect in einer Lösung by Markus Gaegauf
-
Upload
verein-fm-konferenz -
Category
Technology
-
view
323 -
download
0
description
Transcript of FMK2014: Custom Web Publishing (mit PHP) und WebDirect in einer Lösung by Markus Gaegauf
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Custom Web Publishing (mit PHP) und WebDirect in einer Lösung Arbeitsteilung und Performance
Markus Gaegauf - Ingeno FileMaker Entwicklung Christian Liebich - Ingeno Weblösungen und IT-Consulting
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Agenda
• Lösung: tierischeraritäten.ch – um was gehts?
• Wer ist Ingeno Solutions?
• Von der Aufgabenstellung zum Lösungskonzept
• Arbeitsteilung FileMaker, WebDirect und Custom Web mit PHP am Praxisbeispiel
• Webtechnologien - Warum?
• Infrastruktur und Environment der Applikation
• Praxistest: Ein Rundgang durch die Applikation
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Referenten
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Unsere Firma
FileMaker IT-Services
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Ingeno Team
Gilberto Zappatini Dipl.Ing. ETH FileMaker Developer E-Mai: [email protected]
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Beispiel: IT Support
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Beispiel: Datenbank-Entwicklung
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Bericht Schweizer Fernsehen ProSpezieRara (August 2014)
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Vision der ProSpecieRara heute...
Neben der Saaser Mutten gibt es... • 30 seltene Nutztierrassen und • 20 Zuchtorganisation kontrollieren Genetik, „Tier-Kennzeichen“ (Ohrenmarken) • jede hat eigene Lösung zur Kontrolle der Zucht - Web Sites - Excel Listen
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Vision der ProSpecieRara heute...
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Vision der ProSpecieRara Web-Plattform zur Vermittlung von raren Nutztieren in der Schweiz
Züchter/Anbieter
Züchter/Käufer
Zuchtorganisation
Einfache Erfassung / Genehmigen
Alle Organisationen unter einem Hut in gemeinsamer Plattform
ProSpecieRara (Dachorganisation)
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Vorgaben von ProSpecieRara
• Kein Login -> Kein User und PW
• Browserunabhängigkeit / Kein App oder Programm installieren
• Selektion Inserate u.a. nach Rasse und Kanton
• Standort Tier / Standort Verkäufer -> „Google Map“
• Einfacher Genehmigungsprozess durch Rassenverantwortlichen
• Mehrsprachig
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Ein Projekt für WebDirect? Zur Erinnerung:
20
Browser: Safari 6, 7 Int. Explorer 9, 10 Chrome 21
iOS: FileMaker Go
Android Win 8
FileMaker Server 13
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Browser-Aspekt: Custom Web ist ein MUSS
• Züchter (Inserenten)kein Filemaker kein WebDirekt
• Rassenverantwortliche (Zuchtorganisation)kein FileMakerkein WebDirekt
• ÜbersetzerFileMaker / WebDirekt / FM-Go
• Programm AdministratorFileMaker / WebDirekt / FM-Go
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Was nicht geht mit FileMaker? (zusätzlich zu Browser-Kriterium)
• Anmelden ohne LoginFM braucht zwingend Login
• SessionhandlingDies muss mit Custom Web gelöst werden
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Arbeitsteilung FM <-> PHP– Wo hab ich die Wahl?
PHP
• GUI • Formulare • Input-Validierung • Interaktion mit (Web-User) • Session Handling • E-Mail Versand • Verwaltung Bilder
FileMaker
• Datenbank • Datenlogik • Sprache • Daten „abfüllen“ • Setzen Stati • Batch (z.B. Ablauf Inserat) • Schreiben History • Prototyping
Unterstrichen: könnte auf beiden Seiten realisiert werden
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Konzept für Prozess Inserieren FM <-> PHP
Web Formular (PHP)
ausfüllen
„absenden“PHP schreibt Daten in FM Erfassungstabelle
1
PHP sendet Email an Inserenten
bestätigen
PHP löst FM Script aus
übertragen
FM Erfass-Tabelle
2
TierAdresse
Inserat4
3
4
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Detail Prozess Inserieren FM <-> PHP
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Detail Prozess Inserieren / Use Cases
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Datenbank Struktur (Basis-ERD)
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
FileMaker Prototyping
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Anwendung WebDirect
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
FileMaker Clients für Administrator
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Filemaker und Schnittstellen
• Filemaker (Applikation)
• Web-Direct (Browser)
• PHP (Custom Web Publishing)
• SQL
• Java
• XML
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Layer Modell
• Layer 1: Filemaker DB Files
• Layer 2: Filemaker Layouts, Strukturdaten, Skripts (DB-Applikation)-> Direktzugriff mit FileMaker, FileMaker Go, Web-Direct
• Layer 3: Schnittstellen (Java, SQL, XML, PHP)-> Zugriff über das FileMaker Layout
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Technologien für die Webprogrammierung
• Serverside
• Clientside
• Transfer
• Datenbanken
JavaScript (jQuery, Ajax, Bootstrap, Angular, …) / HTML5 / CSS3 / …
PHP / JAVA / …
XML / JSON / ..
Mysql / …
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Einschränkungen für den Einsatz von FileMaker im Web
• Browserabhängigkeit mit Web-Direkt
• Abbildung von Applikationslogik (Login begrenzt auf FileMaker Berechtigungsstruktur)
• SEO Optimierung (Suchmaschinen)
• Eingeschränkter Zugang zu Client-Side Technologien(Header von Web-Direkt nur begrenzt offen für die Integration von CSS3 und JavaScript)
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
HTML Header
<html>!! <head>!! ! <title>Tierische Raritäten</title>!!! ! <!-- Google Fonts -->!! ! <link href="http://fonts.googleapis.com/css?family=Ubuntu" rel="stylesheet" type=“text/css">!!! ! <!-- Custom CSS -->!! ! <link rel="stylesheet" href="../includes/css/styles.css">!! ! !! ! <!-- Scripts —>!! ! <script src="../includes/js/modernizr-2.6.2.min.js"></script>!! ! <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>!! ! <script src="../bootstrap/js/bootstrap.min.js"></script>!! ! <script src=“../includes/js/own.js“></script>!! </head>!! <body>!! ! ………!! </body>!</html>
Filemaker gibt uns keinen Zugriff auf den Header der mit Webdirect im Browser erzeugten Webseite und verwehrt uns den Zugriff auf externe Bibliotheken.
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Datenbanken - FileMaker vs. MySQL
• KostenpflichtigDies wird durch Effizienz bei der Entwicklung schnell wett gemacht!
• Stabiles Produkt
• Hocheffiziente Entwicklung
• Open Source
• Relational / SQL
• Begrenzte Tools zur Datenbankadministration
FileMaker MySQL
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Datenbank- und Datenablage Arten
• Relational
• Hierarchisch
FileMaker / MySQL / Oracle / Excel / Access / …
XML / JSON / LDAP / Finder / Explorer / …
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Datenablage und Speicherallokation
• Beim Austausch zwischen FileMaker und den Schnittstellen werden die Daten an verschiedenen Orten in den Speicher geschrieben
• Hierarchisch
<html> <head></head> <body> <h1 class=“header”>Hello FM Konferenz</h1> </body> </html>
{ “obj1”: { “name”:”Christian", “ort”:”Winterthur” } “obj2”: { “name”:”Markus", “ort”:”Winterthur”} } !
JSON (hash-Schreibweise)HTML (tag-Schreibweise)
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
CMS Systeme
• Ein CMS baut auf einer Datenbank auf
• Ein CMS hat immer:ein Frontend für die Benutzung durch den Betrachterein Backend für die Benutzung durch den Administrator
• Derzeit wichtigste OpenSource CMS Systeme sind: WordPress / Joomla / Typo3
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
tierische-raritäten.ch
• Web Frontend:PHP / Javascript (jQuery, Ajax) / HTML5 / CSS3
• E-Mail Autorisierung
• Backend:FileMakerKonfigurationsangaben, Sprachmodul, Batch, Logging, …Webadministration durch Rassenverantwortlichen
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Webapplikation - specierara.chSystem Verteilungs Diagramm
Ingeno Solutions AG / LBC
device:FireWall
device:Switch
device:Client Computer
client:ZüchterInteressentZuchtverein
client:AdministratorRassenverantwortlicher
client engine:Browser
client engine:E-Mail Client
device:VM Host
http(s)
imap(s)
fm
location:Datacenter Ingeno
execution engine:Virtual Centos 6.5 - cPanel Host
execution engine:FileMaker 13 Server
execution engine:specierara.ch - Engine
artifact:FM Web Layouts
artifact:FM Admin Layouts
artifact:Statistik Exporte
execution engine:Virtual Windows Server 2008device:
Client Computer
client engine:FileMaker Pro
database:specierara.ch DB
filesystem:FM Container Fields
filesystem:FM DB-Files
filesystem:Engine -Cache
artifact:Search
artifact:Inserat
artifact:Inserate Kontrolle
artifact:Authentisierung
Effizienz - Optimierte Infrastruktur
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Grundlagen FileMaker Zugriff mit PHP
$request = $fmHandle->newFindCommand(ENTER_ADVERT);!$request->addFindCriterion(‘__pk_ErfassIDweb’, $advertKey);!$result = $request->execute();!!if( FileMaker::isError($result) ) {!! echo $result->getMessage() ;!! die();!}!!$records = $result->getRecords();!$record = $records[0];!!$typInserat = $record->getField(‘TypInserat_n’);
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Grundlagen FileMaker Zugriff mit PHP Datenupdate
$values['Beschreibung']! = $_POST['tierBeschGesuch'];!$values['Preis_n']! ! = $_POST['gesuchterTierPrice'];!$values['Verfuegbar']!! = $_POST[‘availGes'];!…!!$FMInsertRec ! ! ! = $fm->createRecord(ENTER_ADVERT, $values);!$insertResult ! ! ! = $FMInsertRec->commit();
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Grundlagen FileMaker Zugriff mit PHP Skriptansteuerung
$FMScript = $fm->newPerformScriptCommand(!! ENTER_ADVERT,!! ‘P23ConfirmENTweb’,!! $insertNr!);
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Die Story geht weiter...
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Fragen und offene Diskussion
Markus Gaegauf, Christian Liebich Custom Web Publ. (mit PHP) und WebDirect in einer Lösung
FileMaker Konferenz 2014 Winterthur www.filemaker-konferenz.com
Vielen Dank unseren Sponsoren
Danke für das Bewerten dieses Vortrages