Preis in 2 Währungen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Preis in 2 Währungen

    Hi Leute,

    ich benötige in einem Adminpanel die Möglichkeit 2 Währungen anzugeben. Aber das System läuft nur auf € und bei der Ausgabe wird die andere Währung per Funktion errechnet. Nun möchte ich das Formular aber so abändern das ich auch in der zweiten Währung den Preis eingeben kann, dieser dann in Euro umgerechnet wird und dann in der DB gespeichert wird, leider funktioniert das nicht.

    Irgendwie hab ich wohl einen Denkfehler beim Formular selbst, wie würdet ihr das rein gedanklich lösen? Programmieren kann ich es dann hoffentlich selber ^^

  • #2
    Preis in Euro * Umrechnungskurs = Preis in Fremdwährung

    Preis in Fremdwährung / Umrechnungskurs = Preis in Euro

    Nennt sich Äquivalenz-Umformung
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #3
      Das habe ich doch bereits, die Preise werden wie gesagt schon errechnet, aber wie lös ich das mit dem Formular, weil wenn ich einfach ein feld für beides mache klappt das net so wie es soll!

      Kommentar


      • #4
        Du kannst dir den Wert beider Felder merken und dann prüfen, welcher Wert geändert wurde und denn anderen Wert ausrechnen.

        Zum "Merken" kannst du die Werte bspw. in einer Session speichern oder als hidden fields mitschicken

        btw: Wenn du genauer schreibst, an welcher Stelle du hängen bleibst, ist's für alle einfacher
        Ich denke, also bin ich. - Einige sind trotzdem...

        Kommentar


        • #5
          Also ich lege beim Erstellen eines neuen Datensatzes eine ID an und leite dann auf das bearbeiten-Formular für diese ID um somit hab ich für anlegen und bearbeiten nur ein Formular. Alle daten die vorhanden sind werden als value ausgegeben so das beim absenden immer alle informationen neu gespeichert werden. Nur mit euro hat das gut geklappt und weil ich das system nur auf euro habe möchte ich es nicht erweitern sondern habe lediglich die 2 funktionen wo die preise ausgegeben werden per funktion eingebunden. Im Adminpanel möchte ich somit wenn per Währung LE der Preis angegeben wird das dieser mit der funktion umgerechnet wird und als € in der DB gespeichert wird. Aber irgendwie klappt es nicht also mach ich was falsch! Hier mal den Code den ich bisher habe:

          PHP-Code:
          //Preis Formatieren
          if($_POST[form_preis_euro] > 0

          $_POST[form_preis] = $_POST[form_preis_euro]; 
          }
          elseif(isset(
          $_POST[form_preis_pfund])) 

          $_POST[form_preis] = umrechnen_pfund_admin($_POST[form_preis_pfund]); 
          }
          else 

          $_POST[form_preis] = "111111"

          Die beiden if´s habe ich bereits mit isset(), == "", >0,<0 ausprobiert aber jedesmal das gleiche. Das else ist für mich lediglich als "Fehlermeldung".

          Ich brauch somit einfach etwas das wenn $_POST[form_preis_pfund] einen Preis enthält, dieser in euro umgerechnet wird und anschließend auch richtig formatiert wird.

          Die Funktion umrechnen_pfund_admin() holt sich den Kurs aus der DB und rechnet damit den Preis um und gibt ihn per return() auch wieder zurück....

          Das klappt ja soweit, nur weil ich eben die Euros als Value angebe und dann mitsende zum speichern, wirkt sich die änderung im formular bei LE leider nicht aus!
          Zuletzt geändert von lichtscheu; 29.03.2007, 22:24.

          Kommentar


          • #6
            Wenn das zwei Felder im Formular sind, warum dann

            IF und ELSEIF?

            Wenn nämlich das IF > 0 ist, führt er elseif doch garnichtmehr aus, oder?

            Ich weiß nicht, ob ich Dein Problem richtig verstanden habe,
            aber ich würde mal zwei seperate IFs anlegen, um das Problem
            leichter einschränken zu können. Umbauen kannst es ja dann immernoch.

            Die Frage ist auch, was passiert, wenn einer beide Felder ausfüllt?
            Gruß, Coni
            ~~ codito ergo sum - ich code, also bin ich! ~~

            Kommentar


            • #7
              Original geschrieben von Coniaric
              Die Frage ist auch, was passiert, wenn einer beide Felder ausfüllt?
              Wer sich diese Frage nicht bereits gestellt (und sie beantwortet) hat, bevor er zu Programmieren anfängt - der sollte seine Arbeitsweise überdenken.


              Und wer sich ein bisschen Gedanken um sinnvolles Interface-Design gemacht hat, der hat sich diese Frage schon vorher so beantwortet, dass er gar keine zwei Eingabefelder anbietet - sondern nur eins für den neuen Preis (bisheriger Preis in Euro und Fremdwährung kann ja so angezeigt werden, der muss nicht in ein Formularfeld), und dazu zwei Radiobuttons, mit denen angegeben wird, ob die neue Preisangabe in Euro oder in Fremdwährung ist.
              I don't believe in rebirth. Actually, I never did in my whole lives.

              Kommentar

              Lädt...
              X