Also unter Umständen muss ich für die Übergabe von fe_users.uid an tt_address.pid das letzte Datenfeld ändern, nämlich zu einem Hidden-Feld.
Wenn ich unter "value:" einen Wert eingebe, dann wird das an gewünschter Stelle eingefügt. Allerdings ist das ein statischer Wert, der dann immer dort enthalten wäre, bei jedem Eintrag. Also völlig Quark.
Aber was ist ganz unte mit dem Feld: "Get value from parameter:"
Siehe Screenshot: http://www.bilder-hochladen.net/files/9evk-8-jpg.html
Leider gibt es in der Beschreibung der Extension keinerlei Erklärungen zum Hidden-Feld. Hab es spasshalber mal mit: TSFE:fe_user|user|uid probiert, weil der Teil den man zur Extension ins Template einbinden soll:
plugin.tx_wfqbe_pi1.customQuery.10 {
TS_WFQBE_FEUSER = TEXT
TS_WFQBE_FEUSER.data = TSFE:fe_user|user|uid
TS_WFQBE_FEUSER.overrideAlways = 1
}
den Paramter verwendet. Aber das erbringt auch keinen Inhalt. Ich bin jetzt leider nicht ganz so bewandt, was kämen denn da noch für Parameter in Frage, die die User-ID übergeben würden?
Ich komm einfach nicht weiter, obwohl ich die "Folgeschritte" mit Sicherheit hinbekomme. Aber solange das hier nicht klappt, brauch ich das Adressbuch nicht weiterentwickeln.... :-(
Hallo saltletts,
ich bin seit Tagen am verzweifeln mit dem gleichen Problem.
Hast du schon eine Lösung gefunden?
Ich versuche eine Kundendatenbank zu erstellen und in meiner Abfrage sollen nur
Einträge des jeweils angemeldeten Benutzer angezeigt werden.
Doch irgendwie bekommt mein Marker keinen Wert.
Ich lese den Benutzernamen aus über TSFE:fe_user|user|username und bin der Anleitung gefolgt, habe die Werte für den Query geändert und den entsprechenden Marker in der Select-Anweisung gesetzt.
Ich frage mich, was mach ich da falsch?
Wenn ich den Marker entferne und den Benutzernamen per Hand reinschreibe klappt alles wunderbar, doch das ist nicht wirklich flexibel.
Bist du schon weiter mit deinem Problem?
Wäre sehr über etwas Hilfe erfreut.
Beim SELECT isses eigentlich schon richtig, was da in der Anleitung steht. Damit hatte ich jetzt auch weniger Probleme. Ergebnis soll letztendlich so aussehen (nur ein Beispiel für den endgültig erzeugten Query):
SELECT tt_address.name AS Name, tt_address.country AS Land, tt_address.phone AS Netzvorwahl, tt_address.mobile AS Handynummer FROM tt_address WHERE tt_address.pid = ###TS_WFQBE_FEUSER###
Der Marker ###TS_WFQBE_FEUSER### ist schon richtig.
Das Problem besteht eher beim INSERT (mittels DB Integration). Da kam ich nicht weiter. Irgendwo in den weitverzweigten Ästen von Google, hab ich dann das hier gefunden:
return "'".$GLOBALS['TSFE']->fe_user->user['uid']."'";
Wenn man eine Query Table erzeugt, dann muss das in das Feld "PHP Code", wenn man den Input Type "PHP function" gewählt hat.
Und diesen Inhalt schreibt es dann in die Tabelle/Spalte, die man für diesen INSERT ausgewählt hat, also in meinem fall dann tt_address.pid
Das funktioniert. Da steht dann wirklich die User-ID von dem drin, der den Eintrag erzeugt.
Warum SOWAS nicht in der Extension-Anleitung steht, ist mir allerdings schleierhaft. Man kanns einem auch kompliziert gestalten...
Danke für die schnelle Antwort,
aber das ist genau das Problem, bei meinem SELECT über den Wizard scheint gar kein Wert anzukommen.
Hier vielleicht nochmal zum besseren Verständnis meine SELECT Anweisung.
Select akz From kunden Where kname = ###TS_WFQBE_FEUSER###
Hier sollen eben nur die akz's von dem angemeldetem User ausgegeben werden.
Wenn ich jetzt anstelle des Markers einen festen Wert(Name des Kunden) eintrage funktioniert die Anweisung.
Kann ich einen Fehler gemacht haben beim übergeben des Wertes.
Ich habe eine ext. Template auf der dieser Seite erstellt und folgendes uner Konfiguration eingetragen.
plugin.tx_wfqbe_pi1.customQuery.16 {
TS_WFQBE_FEUSER = TEXT
TS_WFQBE_FEUSER.data = TSFE:fe_user|user|username
TS_WFQBE_FEUSER.overrideAlways = 1
}
Ich bin eigentlich der Meinung ich hätte alles beachtet.
Dein Script da ist prinzipiell auch richtig. Du musst nur schauen, dass die ID (laut deinem TS ist es die 16) mit der angelegten Query Table übereinstimmt.
Achja, und was ergibt kname für einen Wert? Das ist doch ein Name ja?
###TS_WFQBE_FEUSER### ist ein Integer-Wert (eine Zahl/ID) nämlich die ID des aktuellen Fe Users, als musst du diesen Wert wiederrum mit einer Zahl abgleichen, nicht mit einem Namen. Du musst das in der DB-Tabelle mit der Spalte abgleichen, die die User-ID enthält.
Die Frage ist nur, ob du diese User ID dort überhaupt anlegst....
Die ID ist die des angelegten Querys.
Wenn ich doch aber im TS den Wert des Usernamen in den Marker ###TS_WFQBE_FEUSER### übergebe, dann sollte das doch ein varchar Wert sein,
oder irre ich da?
Ich hab doch mit TS_WFQBE_FEUSER.data = TSFE:fe_user|user|username nicht die ID übergeben.
Der Marker hält doch Platz für etwas beliebiges,oder ?
u040923 schrieb
Die ID ist die des angelegten Querys.
Wenn ich doch aber im TS den Wert des Usernamen in den Marker ###TS_WFQBE_FEUSER### übergebe, dann sollte das doch ein varchar Wert sein,
oder irre ich da?
Ich hab doch mit TS_WFQBE_FEUSER.data = TSFE:fe_user|user|username nicht die ID übergeben.
Der Marker hält doch Platz für etwas beliebiges,oder ?
Sorry, das war MEIN Fehler. Da ich anfangs des Threads immer von der User-ID ausgegangen bin, hab ich es übersehen, dass du den Usernamen abgreifst.
Hmm..... also da gehen mir jetzt dann doch leider die Ideen aus. Weil so im ersten Moment scheinst du soweit alles richtig zu machen... :-/
Bist du sicher, dass dein:
plugin.tx_wfqbe_pi1.customQuery.16 {
....
auch wirklich angesprochen wird, dort wo es benötigt wird??
Ich leg solche Sachen immer in einem extra Template in einem Systemordner an, und includiere es dort, wo ich es brauche.
Falls du es auch so machst, wird es evtl. gar nicht verwendet?
Sorry, ansonsten kann ich dir leider auch nicht weiterhelfen.... #paralyzed#
Ich bin mir sicher, dass die query-id richtig ist.
Hier nochmal alles was ich gemacht habe, vielleicht hab ich was an die falsche stelle gesetzt.
TS eingebaut auf der Seite wo ich es brauche in einem ext. Template unter Konfiguration.
plugin.tx_wfqbe_pi1.customQuery.16 {
TS_WFQBE_FEUSER = TEXT
TS_WFQBE_FEUSER.data = TSFE:fe_user|user|username
TS_WFQBE_FEUSER.overrideAlways = 1
}
Der query, mit der ID 16, liegt auf der gleichen Seite wo das ext. Template angelegt wurde.
In diesem query wird der Marker ###TS_WFQBE_FEUSER### benutzt.
Die Ausgabe des query findet auch auf dieser Seite statt.
Hab ich vielleicht was falsch gesetzt.
Kannst du mir beschreiben wie du das gemacht hast.
Das wäre sehr nett wenn du dir die Zeit nehmen würdest.
Danke schon mal.
u040923 schrieb
Hab ich vielleicht was falsch gesetzt.
Kannst du mir beschreiben wie du das gemacht hast.
Das wäre sehr nett wenn du dir die Zeit nehmen würdest.
Ich kann dir nicht mehr beschreiben, als ich es schon gemacht habe.
Ist die "16" vielleicht fälschlicherweise die "Seiten-ID", anstatt der ID für den Query?
Hi,
bin gerade aus dem Urlaub zurück. 8-)
Ne es ist wirklich die ID des Querys.
Nochmal für mich zum Verständnis:
Der Code im TS wird ausgeführt wenn die Seite aufgerufen wird.
Die Select-Anweisung wird doch durchgeführt sobald das Formular
angezeigt wird, sonst würde man ja kein Ergebnis sehen.
Geschied das auch in dieser Reihenfolge?
Also ist mein Problem ja nur, dass der Marker leer ist.
Aber WARUM????
Kann es an der Typo oder PHP Version liegen?
Gruß #angry#
u040923 schrieb
Hab ich vielleicht was falsch gesetzt.
Kannst du mir beschreiben wie du das gemacht hast.
Das wäre sehr nett wenn du dir die Zeit nehmen würdest.
Ich kann dir nicht weiterhelfen. Es sieht im Moment so aus, als machst du alles richtig.
Im DB Integration Plugin, muss der Query halt im Feld "Query record" ausgewählt sein, dann sollte es völlig wurscht sein, wo er angelegt ist.
Persönlich halt ich viel von Ordnung, ich hab oberhalb der eigentlichen Seitenstruktur meine ganzen Systemordner, in denen alles gesammelt rein kommt, dann muss man in der Seitenstruktur die ganzen Sachen nicht suchen, wenn man dran bastelt.
Also wenn du im Root-Template unter "Include static (from extensions):" das DB Integration Plugin (wfqbe) eingebunden hast, keine Ahnung, woran es dann noch liegt, sorry.... #paralyzed#