Mailinglisten-Archive |
hallo Frank, Frank Kunze wrote: > ... Trennung von PHP und HTML ? > Ist das denn überhaupt möglich ? stichwort: templates hierfür gibt es viele frei verfügbare template klasse, davon einige sehr brauchbare zu deren benutzung ich dir dringend rate. > Wenn ich versuche zu trennen (Nämlich z.B. > Formular als "View" und Verarbeitung als > "Controler" die danch in eine Datenbank schreibt); > > wie kann ich denn z.B. das Form.php (also das Formular) > aus dem Work.php (wo z.B. die Pflichtfelder geprüft > werden) wieder aufrufen ? wenn du so programmierst, wie du erklärst, dann steckst du beizeiten in deinem konfusen code fest ;-) nichts für ungut, aber geh es doch mal einfacher an. > Oder allgemein: Wie kann ich ein PHP-Projekt in Module > zerlegen, die sich gegenseitig aufrufen (Wie gesagt bei > mehrfachem > Aufruf von Funktionen aus einem Hauptprogramm wird > immer wieder neuer HTML-Code ausgegeben und im gleichen > Fenster). zunächst ist programm-logik nichts weiter als menschliche logik, meist eine abbildung von allen möglichen aktionen, selects, bedingungen seitens des/der zulünftigen user und die folgen dieser bedingungen (darstellung, verarbeitung). genauso solltest du beginnen. beispiel für die logik einer kontrollstruktur --------------------------------------------------------- wenn submit (dann entscheide in welchem formularteil) wenn teil 1 prüfe auf fehler falls fehler rufe teil 1 mit den falschen eingaben wieder auf sonst verarbeite die daten und rufe teil 2 auf wenn teil 2 prüfe fehler falls fehler rufe teil 2 wieder auf sonst verarbeite die daten und rufe teil 3 auf ... sonst ( noch kein submit ) dann erste seite anzeigen -------------------------------------------------------- das ganze übersetzt du dann einfach in gutes englisch (für die comments) und die entsprechenden php befehle ;-) die einzelnen logik teile packst du dann wahlweise in - php dateien, welche du nur inkludierst (include, include_once, require, require_once) - oder in funktionen mit parametern, die du dann entsprechend aufrufst die kontrollstruktur kann dann z.b. auch das gesamt-layout (das drumherum) bestimmen, also header, footer, navigation usw. die einzelnen formularteile werden dann nur abhängig von den eingehenden parametern eingefüllt. > Ich habe in Form.php die Feldvariablen global gesetzt > und ein echo-Attribut - so weit scheint es zu funktio- > nieren; das echo solltest du nur zu debugging zwecken einsetzen. nochmal der hinweis auf templates. vorsicht mit globalen variablen. die wurden in den neueren php versionen nicht umsonst per default abgeschaltet. schau dir die zweckmäßig einzusetzenden und vor der verarbeitung ggf zu prüfenden superglobalen $_POST, $_GET und $_REQUEST an. > Was mir unklar ist: Wie kann man das was sonst der User > über Buttons oder Links macht, nämlich eine neue URL > aufrufen in den PHP-Code einbauen (deshalb die Frage nach der user arbeitet auch weiterhin mit HTML und den damit verfügbaren hyperlinks oder buttons. php läuft auf dem server und generiert diesen html output, der abhängig von den parametern, die der user geklickt hat, immer wieder dynamisch anders im browser des users erscheint. > Was mich scheinbar "konfus" macht ist genau das nebeneinander > von Kontrollstrukturen in PHP und den impliziten siehe logik und dazu include oder functions. > [nebenbei: Gibt es einen Debugger für PHP ?] php selbst kontrolliert zumindest die syntax deines codes. alles andere macht sich von hand ganz gut oder es gibt dazu hilfsmittel in deinem editor. das ZEND development studio soll wohl solches anbieten. kostet aber auch etwas. regards, Ringo
php::bar PHP Wiki - Listenarchive