Neuigkeiten:

moziloCMS verwendet Cookies. Wenn Sie auf unserer Seite weitersurfen, stimmen Sie der Cookie-Nutzung zu Datenschutzerklärung
moziloCMS Layouts
moziloCMS Plugins

Hauptmenü

Plugin-Parameter Auswahlliste liefert statt String nur Index

Begonnen von polhem, 11. September 2012, 11:23:51

« vorheriges - nächstes »

polhem

Hallo Tüftler und Bastler,
was kann passiert sein, wenn in einem Plugin statt des ausgewählten Wertes aus einer Auswahlliste nur der Index der Liste geliefert wird?
      $config['auswahl'] = array(
            "type" => "select",
            "description" => "Ich mache Urlaub in...",
            "descriptions" => array(
                "Australien",
                "Venezuela",
                "Chemnitz"
                ),
            "multiple" => "false"
            );
echo $this->settings->get('auswahl');liefert jetzt nicht "Chemnitz", sondern "2".
Leider habe ich nicht gemerkt, seit wann der Fehler ausftritt, sondern ich habe ihn immer woanders gesucht. Es sind also schon viele Schritte vergangen und nicht rückgängig zu machen. Eine Fehlermeldung tritt nicht auf (bzw. ist mir nicht aufgefallen).
Möglicherweise liegt das Problem auch nicht im Plugin selbst. Eine frühere Version, die ich extra gespeichert habe, funktioniert jetzt nämlich auch nicht mehr.
Danke schon mal für jede Hilfe!
Polhem

stefanbe

#1
wenn du ein assoziatives array haben möchtest soltest du es auch so anlegen
 "descriptions" => array(
                "Australien" => "Australien",
                "Venezuela" => "Venezuela",
                "Chemnitz" => "Chemnitz"
)
  
:)

lg stefanbe

polhem

#2
Hm, soweit nachvollziehbar. Da hätte ich selbst drauf kommen müssen  :oops:
Trotzdem eine Nachfrage: ist es eigentlich logisch, wenn $this->settings->get() den Schlüssel des Arrays liefert (egal ob assoziativ oder nicht) und nicht den zugehörigen Wert? Was in der plugin.conf gespeichert wird, ist ja zunächst mal Vereinbarungssache. Unter Umständen spricht hier sogar einiges für den Arrayschlüssel. Sollte die plugin.conf mal geknackt werden, sind ggf. sensible Einstellungen wenigstens noch etwas geschützt.
Wie ich das so sehe, greift $this->settings->get() aber nur auf die Werte zu, die unmittelbar in der plugin.conf gespeichert sind. Und dann scheint es mir nicht ganz sauber zu sein, dass ich hier den Schlüssel statt des Wertes erhalte. Es sei denn, es gibt einen Grund dafür...
polhem