Eigene Felder im Frontend erstellen und ausgebeben

  • Guten Tag,


    ich habe eine die Komponente analog aus dem Buch "Joomla!3" Seite 1023 nachgestellt. Jetzt möchte ich aber im Frontend eigene Felder z.B. ein Select-Feld (Inhalt SQL) anzeigen lassen und nach der Auswahl, soll eine Ergebnis-Seite angezeigt werden.


    Hat jemand Erfahrung mit diesem Beispiel.


    Vielen Dank für Eure Hilfe.

  • Hi,


    Zitat

    Jetzt möchte ich aber im Frontend eigene Felder z.B. ein Select-Feld (Inhalt SQL) anzeigen lassen und nach der Auswahl, soll eine Ergebnis-Seite angezeigt werden.


    Ich hab deinen Ansatz noch nicht verstanden? Die Felder sorgen i.d.R. nicht dafür das Ergebnis-Seiten angezeigt werden. Im Grunde kann man mit einem (SQL) Feld eine Auswahl vorschlagen und der User wählt dann eine oder mehrere Werte aus. Diese Auswahl wird dann gespeichert und die Komponente kann dann basieren auf der Auswahl Entscheidungen treffen oder Werte anzeigen.


    Beispiel:
    Du erstellst ein neues Feld "Joomla Versionen" in deinem Kontakt Formular.
    Das Feld ist dann z.b. ein Dropdown mit Joomla Versionen und der User wählt eine aus.
    Sobald diese Info ausgewählt ist kann diese Info gespeichert bzw. weiter verarbeitet werden in unserem Beispiel z.b. per Mail verschickt werden.

  • Hallo


    Danke für deine Antwort. Ich habe im Backend, in der XML Datei verschiedene Felder angelegt. Eines davon in ein Feld Typ SQL und holt die Daten aus einer DB.
    Jetzt will ich dieses Feld aber im Frontend darstellen. Es kommt der Fehler, dass die Klasse nicht bekannt ist. Muss ich den auch eine Form und Tabelle für das Frontend anlegen. Was ist mit der helperklasse?


    Vielen Dank

  • Ach ... Missverständnis auf allen Seiten, glaube ich.
    Wir verstehen unter "eigene Felder" die custom fields.
    Du verstehst darunter, dass du ein JFormField selbst geschrieben hast. Und da ist mein Link natürlich völlig falsch.


    Du musst dein field im Frontend bekannt machen, also den Pfad zu deinem field hinzufügen.
    zum Beispiel so:

    Code
    <fieldset name="details" addfieldpath="/administrator/components/com_banners/models/fields">
  • Hallo Christiane, vielen Dank. Ich probiere das gleich einmal.


    Mir fehlt zur Zeit noch etwas der Durchblick.


    Jetzt sollte es gehen, dass ich ein select Feld im Frontend angezeigt bekomme. Jetzt wählt der User einen Eintrag und soll eine Ergebnis Seite angezeigt bekommen. Ich brauch doch bestimmt im Frontend eine Form oder?


    Vielen Dank

  • Joomla ist voll von Beispielen - schau dir com_contact im frontend an.
    Ich habe mal eine kleine Beispielkomponente veröffentlicht, aber für version 3.0 - das Prinzip stimmt noch aber die Details eventuell nicht mehr. Du kannst es dir hier herunterladen, ohne Gewähr, ich habe es lange nicht mehr angeschaut: http://www.chmst.de/

  • Super. Vielen Dank.


    Christiane, ich habe mir den Feld-typ SQL angesehen. Es funktioniert jetzt. Ich musste einen Wert für Value und einen Wert für Tags angeben.
    Im Backend konnte ich dann den Inhalt des SQL-Feldes ausgeben.


    <field name="tags"
    type="sql"
    default="0" label="Tags" query="SELECT bezeichnung as value, bezeichnung AS tags FROM #__tabelle xyz"/>


    Aufruf in dem View im Backend:


    <div class="control-group">
    <div class="control-label"><?php echo $this->form->getLabel('tags'); ?></div>
    <div class="controls"><?php echo $this->form->getInput('tags'); ?></div>
    </div>


    Muss man das so machen oder gibt es da noch eine andere Möglichkeit?
    Könnte man jetzt die Auswahl des Selectfeldes auf der nächste Seite ausgeben? oder steht da nichts im Value?


    Vielen Dank

  • Gute Abend,



    Das verstehe ich. Ich werde mir deine Komponente richtig ansehen.


    Vielen Dank.
    Du schreibst, das es im Frontend eine Komponente gibt Formular. Ich habe diese nicht gefunden.


    Dir einen schönen Abend und bis bald.