Posts 7
|
Andreas |
Post: 001 09.02.2008 - 01:10 |
| Hallo Hans, erst einmal Kompliment, echt tolle Arbeit, Hut ab!
Das macht so viel Spaß das ich mir ein kleines Projekt ausgedacht habe. Leider fehlen mir noch ein paar Infos. Ich möchte Produktinformationen tabelarisch darstellen(soweit kein Problem) dann soll der User aber die Möglichkeit haben ein anderes Produkt damit zu vergleichen und anhand seiner Daten sollen Werte berechnet werden. Beispiel:
Telefontarife - Tabellen: Tarf A / Tarif B / Tarif c
diese Werte hat jeder Tarif. Also gestalte ich für jeden Tarif eine eigene Seite mit einer immer gleich aufgebauten Tabelle, da ich aber nicht einzelne Zelleninhalte verknüpfen kann mache ich zwei Tabellen, eine mit Überschriften und eine mit Daten, die Daten kann ich dann ja, je nach Auswahl verknüpfen. Der User schaut sich den Tarif an und soll die Möglichkeit haben einen anderen Tarif mit dem angezeigten zu vergleichen.Dafür steht Ihm eine Auswahl zur Verfügung.
Ich würde mich sehr über Anregungen freuen, und hoffe die Platzierung der Frage in diesem Forum ist ok. vielen Dank im vorraus.....
| |
Post: 002
by Hans on 09.02.2008 - 04:23
Hi Andreas,
Mit dem neuesten fox.php gibt es die Möglichkeit von foxaction=display. Damit wird derroutput nuicht in eine Seite geschrieben, sondern nur dargestellt. Gut um Daten anzuzeigen und zu berechnen.
Ich empfehle die Werte als PTVs zu definieren (PageTextVariables), vielleicht in form von
(:PTVName: Wert:)
und dann die PTVs in die Tabelle zu stellen mit Syntax
{$:PTVName}
Auf anderen Seiten können die PTVs auch gezeigt werden mit
{PageName$:PTVName}
Für Berechnungen ist vielleicht Cookbook:MarkupExprPlus das solideste. Oder auch die math markup expression von Cookbook:MarkupExpressionsExtensions.
Zur Darstellung wie gesagt eine Fox form mit action=display und markup (:foxdisplay:) (der Ort auf der Seite der den output erhält), mit der markup expression für die Berechnung im template. Du musst nur die expression als replacement variable im template angeben, mit Syntax {$$(expression ...)} ($$ kommt dazu). Dann wird sie ausgewertet als Teil des Fox posting process, sonst mit normaler Syntax {(expr ...)} wenn die Seite geladen wird.
Für die Tarif Vergleich Seite würde ich dann in der fox form (:input select ...:) Felder setzen, die die Werte von den Tarifseiten nehmen. On submit wird dann der Vergleich mitsamt Berechnung angezeigt.
Beispiel für ein template:
(:foxtemplate "{PageA$:Var1} + {PageB$:Var2} = {$$(add {PageA$:Var1} {PageB$:Var2})}":)
ich hoffe dies gibt Dir ein paar Anregungen!
Ich sollte vielleicht als Beispiel einen kleinen Calculator bauen!
Mit Gruss aus Schottland von einem alten Hamburger
Post: 003
by Andreas on 09.02.2008 - 06:35
Danke Hans....
genau das habe ich befürchtet. Eine sehr gute Antwort die sehr viel Arbeit bedeutet....
Mein Problem ist ich komme nicht aus der php Welt und mein englisch stößt leider nur all zu oft an die Grenzen bei den sehr guten Erklärungen. wo finde ich fox php und gibt es auch deutsche Erklärungen ? Und wäre es nicht besser die Werte in eine db (mysql) zu schreiben und dann von dort zu holen?
ps. ich komme aus norderstedt, und was vhat dich bitte nach schottland verschlagen?
Post: 004
by Hans on 09.02.2008 - 06:52
Cookbook:Fox allerdings in English ![]()
Dieses Forum läuft mit Fox: Cookbook:FoxForum
Allerdings ist dies wohl die komplexeste Anwendung die ich für Fox geschrieben habe.
Ich hab keine Erfahrung mit db Einbindung.
Mit PTVs kann man quasi Datenbanken schaffen.
Sieh zB. auch FoxContacts
Nach Schottland? Die Abenteuerlust, ein Drang zur Unabhängigkeit und weiter offener Natur....
Post: 005
by Andreas on 09.02.2008 - 07:24
na gut, dann habe ich ja erst mal was zu lesen.
ich befürchte mich wieder melden zu müßen......
das dauert aber ein weilchen.
Post: 006
by Andreas on 09.02.2008 - 09:48
aber bevor ich das alles studiere fasse ich mal zusammen.
ich benötige fox. php - das binde ich ein (wahrscheinlich wieder über die config.php ) Dann kann ich die Dinge wie ptv(variablen deren Werte auf Seite x gesetzt werden und dann auf jeder anderen Seite angezeigt werden können) nutzen. Das habe ich richtig so verstanden?
Danke für die Mühe und die schnellen Antworten.
Post: 007
by Hans on 09.02.2008 - 10:04
Ja. Seite X braucht nicht einmal gezeigt zu werden und kann ein Behälter sein nur für Werte als PTVs.
Also wenn jemand Tarife A anschauen will, braucht er nur eine Form zu klicken, die dann die Werte von der Daten Seite holt und mittels template (Muster?) darstellt. So dass die Tabelle von der Du anfangst sprachst nur im template zu sein braucht.
Ich hab dafür kein Anwendungsbeispiel. Dein Projekt kann vielleicht das erste werden!
