scan($csldata); $Scanner->getdata();"> scan($csldata); $Scanner->getdata();">
Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Gunda Laden Geändert vor über 9 Jahren
1
Compact Survey Language Dokumentation: csl-survey.de/doku.pdf Team: Kasimir Blust, Laura Seidler
2
Die Sprache Syntax so simpel wie möglich Code einfach zu implementieren Schnell und einfach erweiterbar Umfrage ::= 'CSL:' '“' TEXT '“' '\n' Seite+ TEXT ::= {'a',..., 'z', 'A',..., 'Z', 'ä', 'ö', '!', '?'}+ Seite ::= '{' '“' TEXT '“' \n' Bereich+ '\n' Seitenende Seitenende ::= '“' TEXT '“' '}' Bereich ::= '>' '-'? (Bereichstyp ':' )? '“' TEXT '“' \n' Frage+ BereichsTyp::= 'text' | 'date' | 'datetime' | 'url' | 'textarea' | 'select' | 'radio' | 'checkbox' Frage ::= '-'? (Typ | ListTyp ) '\n' Typ ::= ( ('text' | 'date' | 'datetime' | 'url' | 'info') ':' )? '“' TEXT „“ ListenTyp ::= ( 'select' | 'radio' | 'checkbox' ) ':“' TEXT '“(' '“' TEXT '“' (',' '“' TEXT '“')* ')'
3
Der Scanner Simpel und schnell Basiert auf regulären Ausdrücken Beispiel: $this->patterns['main'] = "(?P CSL):(?P [a-zA-Z0-9äöüß\s-]*)"; Code einfach zu implementieren Implementierung: require_once “csl/classes/CSLScanner.php“; $Scanner = new CSLScanner(); $Scanner->scan($csldata); $Scanner->getdata();
4
Der Parser Parser besteht aus 4 Ebenen je nach Ebene mögliche Funktionen Beispiel: if($this->data['layer'] == 0) { if($l['ident'] == "CSL") {... // Umfragenanfang } else {... // Syntaktischer Fehler } } Implementierung: require_once “csl/classes/CSLParser.php“; $Parser = new CSLParser(); $Parser->parse($Scanner->getdata()); $Parser->getdata(true);
5
Der Form Generator Generiert ein HTML-Formular aus den vom Parser gelieferten Daten Barrierefreie HTML-Auszeichnung Design über CSS default-Designs für User ohne CSS- Kenntnisse Einfache Einbindung Aufruf im PHP-Code durch require_once "csl/classes/FormGenerator.p hp"; $FormGenerator = new FormGenerator(); $FormGenerator- >generateForm($Parser- >getdata()); Kopieren des ausgegebenen HTML-Codes
6
Statistiken Möglichkeit, die in das Formular eingegeben Daten auswerten zu lassen Darstellungsform abhängig vom Feld-Typ Gruppierung für Texteingaben (Balken-)Diagramme für Auswahlen Diagramme oder Gruppierung für Zahleneingaben Aktualisierung mit jeder erneuten Dateneingabe Implementierung: require_once "csl/classes/CSLStatistics.php"; $Statistic = new CSLStatistic(); $Statistic->CreateAnswer($_POST, true); //Ausgabe als Statistik echo $Statistic->toStatistic(); // Ausgabe als CSV $Statistic->DownloadCSV(); // Ausgabe als Datentabelle echo $Statistic->toTable();
7
Architektur von CSL Admin Client Ajax Json Container Scanner $scanner->scan($csldata); Zwei- dimensionales Array Parser $parser->parse($scanner->getdata()); Mehr- dimensionales Array FormGenerator $formgenerator->generateForm ($parser->getdata()); Datenbank User Client Ajax Json Container Statistik $Statistik->CreateAnswer($_POST); Mehrdimsensionales Array Statistik-Tabelle $Statistik->toStatistic(); Mehr- dimensionales Array Datentabelle $Statistik->toTable(); Mehrdimensionales Array CSV Datei $Statistik->DownloadCSV(); HTML Formular reiner CSL Code Json Container HTML Code CSL Umfrage
8
CSL auf der Medianight
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.