Zitat von Slava
Ankündigung
Einklappen
Keine Ankündigung bisher.
[Erledigt] phpdatei auslesen
Einklappen
Neue Werbung 2019
Einklappen
X
-
das wundert mich auch, dass es funktioniert.
ich glaube, dass ich "Java" denke.Slava
http://bituniverse.com
Kommentar
-
@Zergling: OK, jetzt ist mir das klar.
@ALL: Nun weiter mit der Feature-Liste oder mit Kommentaren zu meinen ...Viele Grüße,
Dr.E.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. Think about software design [B]before[/B] you start to write code!
2. Discuss and review it together with [B]experts[/B]!
3. Choose [B]good[/B] tools (-> [URL="http://adventure-php-framework.org/Seite/088-Why-APF"]Adventure PHP Framework (APF)[/URL][URL="http://adventure-php-framework.org"][/URL])!
4. Write [I][B]clean and reusable[/B][/I] software only!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Kommentar
-
Hallo,
wo fang ich an?
Ich setze mich im Moment mit PHPTAL als Template - System auseinander. Warum jenes? Gefällt mir einfach, ka, ist halt so
Nun bin ich an dem Punkt, wo die als Template erzeugten Formulare validiert werden sollen. Und klasse wäre es natürlich, wenn das Template mitteilen würde, welches Feld den da sein muss und in welcher Form.
Ist das überhaupt Aufgabe eines Templatesystems oder sollte rein der Kern über eine Validierung entscheiden?
Ich sehe, dass dr.e dies als Anfordung an ein Templatesystem formuliert hat. Nur frage ich mich wer den diese Information nun ausliest/nutzt.
Das Formular wird erzeugt, angezeigt und im Anschluss abgeschickt. Nun kommen die Daten beim Controller an. Woher weiss dieser nun, wie die Validierung stattfinden soll? Holt er sich die Info nochmal aus dem Template oder triggert er eine Funktion der Templateklasse?
Für PHPTAL habe ich noch keine Lösung gefunden, grübel da noch.
Hätte auch durchaus Interesse mehr zu dem Thema zu lesen oder vll auch etwas beizutragen, wenn mir das möglich ist.
Bis dääähne.
Kommentar
-
Hallo squig,
Ich setze mich im Moment mit PHPTAL als Template - System auseinander. Warum jenes? Gefällt mir einfach, ka, ist halt so
Nun bin ich an dem Punkt, wo die als Template erzeugten Formulare validiert werden sollen. Und klasse wäre es natürlich, wenn das Template mitteilen würde, welches Feld den da sein muss und in welcher Form.
Ist das überhaupt Aufgabe eines Templatesystems oder sollte rein der Kern über eine Validierung entscheiden?
Ich sehe, dass dr.e dies als Anfordung an ein Templatesystem formuliert hat. Nur frage ich mich wer den diese Information nun ausliest/nutzt.
Das Formular wird erzeugt, angezeigt und im Anschluss abgeschickt. Nun kommen die Daten beim Controller an. Woher weiss dieser nun, wie die Validierung stattfinden soll? Holt er sich die Info nochmal aus dem Template oder triggert er eine Funktion der Templateklasse?
Die Validierung und das Formular-Handling passiert vollständig in den Objekten des internen DOMs. Ein Controller wird immer im Context eines internen Document-Objekts aufgerufen und kennt dessen Attribute und den Objektbaum. Im Controller kannst du nun auf das Formular zugreifen und dir die Werte holen. Ich persönlich involviere hier aber nochmal den variablenHandler und lasse ihn die Werte aus dem Request auslesen, so dass ich sicher sein kann, dass diese Offsets auch wirklich bestehen.
Im Fall des Kontaktformulars gibt es dann eine Business-Schicht, die sich um den Geschäfts-Prozess (=Abschicken des Formulars und weiterleiten auf einen anderen View) kümmert. Deswegen inizialisiert die Präsentations-Schicht ein Schnittstellen-Objekt, füllt es mit Daten und gibt es an die Business-Schicht weiter. Mehr Logik - wie das Handling von Benutzereingaben und die Ausgabe der GUI - sollte auch nicht in der Präsentations-Schicht verpackt sein.
Für PHPTAL habe ich noch keine Lösung gefunden, grübel da noch.
Hätte auch durchaus Interesse mehr zu dem Thema zu lesen oder vll auch etwas beizutragen, wenn mir das möglich ist.Viele Grüße,
Dr.E.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. Think about software design [B]before[/B] you start to write code!
2. Discuss and review it together with [B]experts[/B]!
3. Choose [B]good[/B] tools (-> [URL="http://adventure-php-framework.org/Seite/088-Why-APF"]Adventure PHP Framework (APF)[/URL][URL="http://adventure-php-framework.org"][/URL])!
4. Write [I][B]clean and reusable[/B][/I] software only!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Kommentar
-
Hallo,
danke für die bisherigen Anregungen, ich versuche eine meiner Ausagen nun etwas zu erläutern.
Zitat:
Ich sehe, dass dr.e dies als Anfordung an ein Templatesystem formuliert hat. Nur frage ich mich wer den diese Information nun ausliest/nutzt.
Wie meinst du das?
Abstraktes Formular-Handling (Beschreibung eines Formulars komplett in XML-Tags)
Mein Ziel ist es meine Formularvalidierung nur einmal zu schreiben, ich plane eine Klasse "Validator", welche statisch verschiedene Methoden zur Validerung von Formulardaten bereitstellt, das ganze unter Nutzung der neuen Filter - Extension.
Nun würde ich gerne nicht mehr in meinem PHP - Code festlegen, wie ein Formular zu valideren ist, sondern die nötigen Schritte sollen entweder im Template oder alternativ in einer "Formularbeschreibungs - Datei" festgehalten werden.
Nach dem Abschicken des Formulars möchte ich die Information, was wie zu valideren ist, an meinen Controller geben und dieser ruft die entsprechenden Routinen des "Validator" auf. So müsste man nie wieder eine projektspezifische Validierung implementieren, sondern "nur" die Validierung beschreiben, in der Theorie
Das Template wird dann angezeigt, das Formular ausgefüllt und abgeschickt und nun kommt der Haken. Sind die Validierungsschritte im Template enthalten müsste ich dieses ja nun nochmal durchgehen und nach diesen Schritten suchen, besser wäre es vll, wenn das Templatesystem, bei der Ausführung des Templates diese Schritte schon auslesen und sich merken würde. Bei PHPTAL im Moment nicht der Fall, müsste man selbst Hand anlegen.
Alternativ könnte man die "Validierungsbeschreibung" in einem zum jeweiligen Template korrespondierenden File ablegen und von dort laden. Nachteil es müssen 2 Dateien geändert werden sollen Änderungen am Formular stattfinden.
Klingt alles im Moment etwas abstrus, bin da selber noch am Sortieren.
Forder ich den zuviel von einem Templatesystem, indem ich versuche die Validierung in solch einer Form zu beschreiben? Geht das über die Aufgabe der Templates hinaus und sollte generell in Geschäftslogik abgehandelt werden?
Bin dankbar für weitere Anregungen.
Bis dääähne.
Kommentar
-
Nun frag ich mich, wieweit diese Beschreibung gehen sollte, soll man in diesem Template auch festlegen, bei welchen Feldern es sich um Pflichtfelder handelt und welche Datentypen usw als Eingabe erwartet werden?
- validator
- button
- field
- ...
eines Validators, oder auch eines Feldes direkt, zu setzen und so die Validierung bereits hier zu beschreiben. Mit dem Attribut "validator" kann man indirekt eine statische Methode "myValidator" ansprechen um die Eingabe zu validieren. Hier bist du also generisch und könntest auch Telefonnummern oder Datums oder sonstwas validieren in dem du einfach im Template die benötigte Methode einträgst. Bei mir heißen die Methoden dann "validateEMail" und im Tag muss ich nur "EMail" eintragen - der Einfachheit halber.
Mein Ziel ist es meine Formularvalidierung nur einmal zu schreiben, ich plane eine Klasse "Validator", welche statisch verschiedene Methoden zur Validerung von Formulardaten bereitstellt, das ganze unter Nutzung der neuen Filter - Extension.
Nun würde ich gerne nicht mehr in meinem PHP - Code festlegen, wie ein Formular zu valideren ist, sondern die nötigen Schritte sollen entweder im Template oder alternativ in einer "Formularbeschreibungs - Datei" festgehalten werden.
Nach dem Abschicken des Formulars möchte ich die Information, was wie zu valideren ist, an meinen Controller geben und dieser ruft die entsprechenden Routinen des "Validator" auf. So müsste man nie wieder eine projektspezifische Validierung implementieren, sondern "nur" die Validierung beschreiben, in der Theorie Wink
Das Template wird dann angezeigt, das Formular ausgefüllt und abgeschickt und nun kommt der Haken. Sind die Validierungsschritte im Template enthalten müsste ich dieses ja nun nochmal durchgehen und nach diesen Schritten suchen, besser wäre es vll, wenn das Templatesystem, bei der Ausführung des Templates diese Schritte schon auslesen und sich merken würde. Bei PHPTAL im Moment nicht der Fall, müsste man selbst Hand anlegen.
Alternativ könnte man die "Validierungsbeschreibung" in einem zum jeweiligen Template korrespondierenden File ablegen und von dort laden. Nachteil es müssen 2 Dateien geändert werden sollen Änderungen am Formular stattfinden.
Code:<form:text name="AbsenderAdresse" class="eingabe_feld" style="width: 280px;" validate="true" validator="Text" button="KontaktSenden" />
Klingt alles im Moment etwas abstrus, bin da selber noch am Sortieren.
Forder ich den zuviel von einem Templatesystem, indem ich versuche die Validierung in solch einer Form zu beschreiben? Geht das über die Aufgabe der Templates hinaus und sollte generell in Geschäftslogik abgehandelt werden?
Bin dankbar für weitere Anregungen.Viele Grüße,
Dr.E.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. Think about software design [B]before[/B] you start to write code!
2. Discuss and review it together with [B]experts[/B]!
3. Choose [B]good[/B] tools (-> [URL="http://adventure-php-framework.org/Seite/088-Why-APF"]Adventure PHP Framework (APF)[/URL][URL="http://adventure-php-framework.org"][/URL])!
4. Write [I][B]clean and reusable[/B][/I] software only!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Kommentar
-
@Zwerg: Konnte dir mit deinem Problem nun geholfen werden?Viele Grüße,
Dr.E.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. Think about software design [B]before[/B] you start to write code!
2. Discuss and review it together with [B]experts[/B]!
3. Choose [B]good[/B] tools (-> [URL="http://adventure-php-framework.org/Seite/088-Why-APF"]Adventure PHP Framework (APF)[/URL][URL="http://adventure-php-framework.org"][/URL])!
4. Write [I][B]clean and reusable[/B][/I] software only!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Kommentar
Kommentar