Variablen speichern oder an zwei Ziele übergeben?
Hes
- php
Hallo,
ich bin unwürdig. Aber das wußte ich vorher schon ;0)
Mal ernsthaft, ich bin jetzt ganz kleinlaut und brauche einen Experten Tipp. Ich versuche gerade sowas ähnliches wie einen eCard Generator zusammenzustümpern. Ich verwende dafür ein Frameset:
Frame 1 - hier wird die Optik festgelegt (Formular)
Frame 2 - hier erscheint die aktuelle Version der Karte
Nun gibt es ja Millionen Farben, d.h. ich habe eine kleine Farbauswahl per Link im Formular erreichbar gemacht. Dort wählt man eine Farbe und sendet (POST) sie als Variable an Frame 1 zurück. Das funktioniert bestens.
<a href="farbe/hintergrund_farbe.php" target="style">Hintergrund</a> <input type="text" name="hintergrund_farbe" size="6" value="<?php echo $_POST[hintergrund_farbe];?>"><br>
Hier nun mein Problem: Dieser Farbwert wird ja übergeben, bevor das Formular gesendet wurde, d.h. ich verliere alle anderen, zuvor getätigten Angaben, wie Schriftgröße & Co. weil sie noch nicht in POST hinterlegt sind. Es gibt also auch nichts über $_POST auszulesen.
Jetzt nun meine Frage *Trommelwirbel*:
Gibt es eine Möglichkeit, die aktuellen Einstellungen in Frame 1 zu sichern, sobald ich für die Farbauswahl das Formular per Link verlasse und dann erneut aufrufe, indem ich die Variable übergeb, oder muß / kann ich wirklich immer nur über senden arbeiten?
Meine Lösungsansatz war ja sowas wie onclick="setcookie()"
Aber woher sollen das Cookies und ich denn wissen, was in noch nicht gesendeten Formularfeldern steht?
Keine Sorge, ich will keine Lösung, oder daß mir jemand den Code schreibt, ich möchte nur wissen, ob sich da überhaupt was machen läßt, oder ob ich die Sache so umstricken muß, daß eben alles immer über SENDEN läuft.
Wäre für Tipps echt dankbar - Hes
Hello,
ohne Dein Posting wirklich genau gelesen zu haben ... (das ist dann auch "unwürdig" *g*)
Stell Dir einfach vor, dass jegliche Speicherung ausschließlich auf dem Server stattfindet.
Änderung in den Variablen, die ein Erscheinungsbild oder eine Auswahl beinflussen, müssen also vor dem Anzeige n der Änderung immer dem Server mitgeteilt werden.
Der Server weiß also alles, was wichtig ist, der Client gar nichts. Der muss nur gehorchen.
Wenn Du nun also Farben verändern willst, dann teile dem Server sämtliche Änderungswünsche an Werten mit, seitdem er das letzte mal eine Antwort geschickt hat, und bitte ihn, doch nochmal eine Ausgabe zu generieren, aber mit den entsprechenden Änderungen. Dazu muss er sich natürlich den Status Quo für den User gemerkt haben. Dabei hilft ihm eine Session.
Harzliche Grüße vom Berg
http://www.annerschbarrich.de
Tom
Danke Dir.
Fazit: Wird jetzt alles mit "senden" verbastelt. Vielleicht finde ich ja eine Möglichkeit, den "senden" Button zu verschönern ;0).
Danke jedenfalls - Hes