Joomla 5 Mitteilung

Wir freuen uns mitteilen zu können, dass seit dem 29. Januar 2024 alle unsere Joomla Erweiterungen mit Joomla 5 kompatible sind.

Für alle die gerade noch von Joomla 3 auf 4 aktualisieren: Anleitungen für die Joomla 4 Migration gibt es hier:

Es gibt nun auch eine eigenständige Dokumentation für Visforms für Joomla 4 und für Visforms auf Joomla 5

Forum

Visforms Subscription Inhaber können in unserem Forum Fragen stellen. Bitte mit dem entsprechenden Benutzer anmelden.
Jeder kann lesend auf das Forum zugreifen.

Bitte stellen Sie nur 1 Frage pro Thema.

Wichtig Angaben für fast jede Frage:
V1: Welche Visforms-Version läuft?
V2: Welche Joomla-Version läuft?
V3: Welche PHP-Version läuft?

Filterfeld im Frontend für Textfelder

Mehr
1 Jahr 5 Monate her #9434 von dietersteinmetz
Filterfeld im Frontend für Textfelder wurde erstellt von dietersteinmetz
Hallo Visforms Experten,

bei Dropdown Feldern (select) kann ich einstellen, dass ich im Frontend Suchwerkzeuge und damit Filter bekomme.
Dazu verwende ich "Filter field" und "yes" in "advanced" bei Type "select".

Kann ich Textfelder auch filtern? Ich ziehe den Wert des Textfeldes aus dem Namen des Benutzers (erster Buchstabe). Also nur konkrete Werte.
Jetzt möchte ich im Frontend filtern. Geht das?

mfg
Dieter Steinmetz

Mehr
1 Jahr 5 Monate her #9435 von Administrator AV
Administrator AV antwortete auf Filterfeld im Frontend für Textfelder
Hallo Dieter,
das geht leider nicht.
Da Textfelder per Definition beliebige freie Texte enthalten können, eignen sich diese normalerweise nicht um daraus eine Filter-Listbox zu erzeugen.

Was genau möchtest du denn ereichen?

Wenn du in dem Textfeld den Benutzernamen (den Joomla Benutzer Namen) verwendest, dann könntest du vielleicht statt eines Textfeldes ein Feld vom Typ SelectSQL verwenden.
docs.joomla-4.visforms.vi-solutions.de/d...ds-with-option-list/
Da diese vom Typ her Listboxen (Dropdown) sind, kann man sie auch als Suchfilter verwenden.

Herzliche Grüße,
Aicha

:idea: I recommend you the new and up-to-date documentation for Joomla 4:
docs.joomla-5.visforms.vi-solutions.de/en/docs/
Most of this also applies retrospectively to Joomla 3.
Please only ask 1 question per topic :-).

:idea: Ich empfehle Dir die neue und aktuelle Dokumentation für Joomla 4:
docs.joomla-5.visforms.vi-solutions.de/docs/
Das meiste gilt rückwirkend auch für Joomla 3.
Bitte immer nur 1 Frage pro Thema stellen :-).

Mehr
1 Jahr 5 Monate her #9438 von dietersteinmetz
dietersteinmetz antwortete auf Filterfeld im Frontend für Textfelder
Ich brauche ein Feld, das aus dem Benutzername einen Buchstaben herausholt und anschließend möchte ich das im Frontend filtern. Konkret unsere Benutzernamen haben als ersten Buchstaben das Stockwerk. Mit Hilfe von Select SQL kann ich das ermitteln.

Daher habe ich ein Textfeld genommen, das mit Select SQL den ersten Buchstaben aus dem Benutzername herausholt. Und als Standardwert einträgt. Aber jetzt weiß ich, dass ich Textfelder nicht filtern kann.

Vielleicht anders herum? Kann ich ein Select Feld (Dropdown Feld) nehmen und mit SQL aus dem Benutzername den ersten Buchstaben als Standardwert bekommen?
(Neue Frage, soll ich neuen Thread aufmachen?)

mfg
Dieter

Mehr
1 Jahr 5 Monate her - 1 Jahr 4 Monate her #9441 von Administrator AV
Administrator AV antwortete auf Filterfeld im Frontend für Textfelder
Hallo Dieter,

Es geht ja nach wie vor darum eine Lösung auf dieselbe Frage zu finden.
Somit ist ein Thema passend.
Also kein neues Thema.

In einem Select-Feld kannst du in der Feldkonfiguration immer nur eine Option fest als Default-Wert festlegen.
Wenn du, abhängig vom angemeldeten Benutzer immer eine andere Option als Default gewählt haben willst, dann geht das eigentlich nur mit eine Custom Plugin.
docs.joomla-4.visforms.vi-solutions.de/d...-plugin-development/

Mein Vorschlag war, dass du den Feldtyp SelectSQL verwendest.
Dort kannst du die Optionen der Listbox dynamisch mit Hilfe eines SQL Statements erzeugen.
Du kannst in diesem SQL Statement Informationen des aktuellen Benutzers verwenden.
Damit kannst du aus der Datenbank den Benutzernamen des aktuellen Benutzers extrahieren und den ersten Buchstaben davon als Optionswert verwenden.

Das SQL Statement sieht so aus:
Code:
select SUBSTRING(username,1,1) as label, SUBSTRING(username,1,1) as value from #__users where id = ${user:id}

Ein kleines Problem mit diesem Vorgehen kann es geben, wenn Administratoren im Frontend die übermittelten Daten bearbeiten können.
In diesem Fall ist dann der angemeldete Benutzer der Administrator und das SQL würde dann mit der falschen Benutzerid ausgeführt.
Aber solange du ein Daten Bearbeiten nicht brauchst, oder jeder nur seine eigenen Datensätze bearbeiten kann, funktioniert der Ansatz.

Herzliche Grüße,
Aicha

:idea: I recommend you the new and up-to-date documentation for Joomla 4:
docs.joomla-5.visforms.vi-solutions.de/en/docs/
Most of this also applies retrospectively to Joomla 3.
Please only ask 1 question per topic :-).

:idea: Ich empfehle Dir die neue und aktuelle Dokumentation für Joomla 4:
docs.joomla-5.visforms.vi-solutions.de/docs/
Das meiste gilt rückwirkend auch für Joomla 3.
Bitte immer nur 1 Frage pro Thema stellen :-).
Letzte Änderung: 1 Jahr 4 Monate her von Administrator IV.

Mehr
1 Jahr 5 Monate her #9444 von dietersteinmetz
dietersteinmetz antwortete auf Filterfeld im Frontend für Textfelder
Vielen Dank Aicha,

einen Schritt weiter. Problem ist noch, dass für die Erstellung des Datensatzes und für den Filter die gleiche SQL Abfrage verwendet wird.

Richtig, wenn ein Benutzer einen neuen Datensatz erstellt wir der erste Buchstabe in den Namen eingetragen.

Leider funktioniert der Filter im Frontend auch so. Es wird der erste Buchstabe des Namens genommen und der Benutzer kann nur nach seinem Buchstaben filtern.

In meinem Fall wird das Stockwerk aus dem Namen das Feld eingetragen, aber im Frontend kann der Benutzer auch nur nach seinem Stockwerk filtern. Er kann nicht nach anderen Stockwerken filtern, Zugang hätte er.

Gibt es da eine Lösung?

Mit freundlichen Grüßen
Dieter

Mehr
1 Jahr 5 Monate her - 1 Jahr 4 Monate her #9453 von Administrator AV
Administrator AV antwortete auf Filterfeld im Frontend für Textfelder
Hallo Dieter,

die Aussage 'dass für die Erstellung des Datensatzes und für den Filter die gleiche SQL Abfrage verwendet wird' ist nicht korrekt.
Das sieht für dich nur so aus.

Bei einem Feld vom Typ SelectSQL werden in der Filter-Listbox alle Werte zur Auswahl angezeigt, für die es einen Datensatz gibt.
Werte, zu denen es keinen Datensatz gibt, erscheinen nicht in der Filter-Listbox.
Aber wenn man so einen Wert auswählen könnte, dann würden ja auch 0 Datensätze gefunden.

Du hast vermutlich bei deinem Test nur Datensätze mit einem Benutzer übertragen.
Deshalb hat dein SelectSQL Feld in allen übermittelten Datensätzen denselben Wert.
Und das sieht für dich so aus, als würde 'für die Erstellung des Datensatzes und für den Filter die gleiche SQL Abfrage verwendet'.

Herzliche Grüße,
Aicha

 

:idea: I recommend you the new and up-to-date documentation for Joomla 4:
docs.joomla-5.visforms.vi-solutions.de/en/docs/
Most of this also applies retrospectively to Joomla 3.
Please only ask 1 question per topic :-).

:idea: Ich empfehle Dir die neue und aktuelle Dokumentation für Joomla 4:
docs.joomla-5.visforms.vi-solutions.de/docs/
Das meiste gilt rückwirkend auch für Joomla 3.
Bitte immer nur 1 Frage pro Thema stellen :-).
Letzte Änderung: 1 Jahr 4 Monate her von Administrator IV.
Folgende Benutzer bedankten sich: dietersteinmetz

Moderatoren: Administrator AVAdministrator IV
Powered by Kunena Forum