Aufbau dynamischen Link mit Typoscript [Gelöst]

  • mccoy mccoy
    Padawan
    0 x
    40 Beiträge
    0 Hilfreiche Beiträge
    16. 07. 2008, 23:44

    Hallo,

    ich bin noch neu mit TS und habe eine ziemlich knifflige Aufgabe zu lösen:

    Ich habe einen externen Link mit typolink gebaut und möchte diesem eine ID aus der fe_user tabelle anhängen. Diese ID ist bei jedem FE-User anders. D.h. je nach dem wer angemeldet ist und auf den Link klickt, soll eine andere ID an den Link angehängt bekommen.

    Meine ersten Gehversuche(!!) sehen so aus:

    Erzeugung des Typolinks:
    [TS]page.10.subparts.rightBlock.25 = TEXT
    page.10.subparts.rightBlock.25.value = Link zu externer URL
    page.10.subparts.rightBlock.25.typolink.parameter = http://externeDomain.de
    #das ist die ID die dynamisch angehängt werden soll - hier statisch zum testen
    //page.10.subparts.rightBlock.25.typolink.parameter.wrap = | &ID=1119346746359
    page.10.subparts.rightBlock.25.typolink.target = _self
    [/TS]

    VERSUCH der Abfrage der ID je nach Nutzer mit TS
    [TS]temp.sfid = COA
    temp.sfid {
    10.table = fe_user
    10.select{
    selectFields = [mein_ID_Feld_in_der_FE_USER]
    andWhere.dataWrap = uid={TSFE:fe_user|user|uid}
    }
    }
    [/TS]

    Selbst wenn die Abfrage so funktioniert(?), wie bekomme ich diese als Parameter an meinen typolink gehängt? Macht es Sinn die Abfrage in einen Kontainer zu schachteln?

    Wäre für alle Ideen und Hilfen sehr dankbar!

    Viele Grüße
    Andy


  • 1
  • einpraegsam.net einpraegs...
    MacGyver
    0 x
    9340 Beiträge
    80 Hilfreiche Beiträge
    17. 07. 2008, 00:02

    Du brauchst keine extra SELECT Abfrage, die feuser UID ist im TSFE. Über ein COA kannst du deinen externen Link zusammenbauen...

    in2code.de - Wir leben TYPO3
    - Möchtest du TYPO3 komplett verstehen? Eigene Erweiterungen erstellen? Bei uns gibt es auch Schulungen https://www.in2code.de/produkte/typo3-schulungen/
    - Die Arbeit mit TYPO3 macht dir Spaß? Du stehst auf Berge? Komm zu uns! https://www.in2code.de/agentur/karriere/

  • mccoy mccoy
    Padawan
    0 x
    40 Beiträge
    0 Hilfreiche Beiträge
    17. 07. 2008, 08:28

    Hi,

    wie meinst du das? Ich denke ich brauche die UID als Bedingung. Ich möchte ja eigentlich den Wert "[mein_ID_Feld_in_der_FE_USER]" je nach UID bekommen.

    Das passende SQL Statement sehe in etwa so aus:
    SELECT 'mein_ID_Feld_in_der_FE_USER' FROM 'fe_user' WHERE UID = 'aktuelle UID'

  • mccoy mccoy
    Padawan
    0 x
    40 Beiträge
    0 Hilfreiche Beiträge
    17. 07. 2008, 12:11

    Hallo,

    ich bin nun etwas weiter. Ich habe ein Mailing von 2005 gefunden, wo R.Lemke meinte, dass man die aktuelle USER ID nur per PHP Script abfragen kann. Ich weiss nicht ob das noch aktuell ist, aber somit habe ich schon mal die jeweilige ID von meinem Feld für jeden FE-User.

    1. <?php
    2. debug( $conf );
    3. $GLOBALS["TSFE"]->set_no_cache();
    4. $userid = $GLOBALS['TSFE']->fe_user->user['meinFeld'];
    5. $content = $userid;
    6. ?>

    dieses binde ich dann per TS ein:
    [TS][globalVar = TSFE:id = {$shopPID}]
    temp.phpScript = PHP_SCRIPT
    temp.phpScript {
    file = pfad/zur/datei/getUserId_inc.php
    }
    page.10.subparts.subNav.5 = < temp.phpScript
    [end][/TS]

    Naja, nun habe ich zumindest die ID. Wie kann ich nun an einem Typolink diese ID anhängen. addAdditionalParameters funzt ja nur mit interen Links?

    Ich weiß grad nicht weiter... #paralyzed#

  • steffenk steffenk
    Obi-Wan Kenobi
    0 x
    4666 Beiträge
    0 Hilfreiche Beiträge
    17. 07. 2008, 13:19

    [TS]page.10.subparts.rightBlock.25.typolink.parameter.dataWrap = http://externeDomain.de?id={TSFE:fe_user|user|uid}[/TS]

  • mccoy mccoy
    Padawan
    0 x
    40 Beiträge
    0 Hilfreiche Beiträge
    17. 07. 2008, 13:30

    Hallo Steffen,

    vielen dank!

    Ich will zwar nicht die UID anhängen, aber so geht es auch:
    [TS]page.10.subparts.rightBlock.25.typolink.parameter.dataWrap = http://externeDomain.de?id={TSFE:fe_user|user|tx_meinFeldMitID}
    [/TS]

    Und ich mach mir da nen Wolf... :o - bei einer eigentlich so einfachen Lösung.
    Tja gewusst wie...

    Aber ich übe ja noch die TSREF lesen zu lernen... #paralyzed#

    Viele Grüße
    Andy

  • workfare workfare
    R2-D2
    0 x
    113 Beiträge
    0 Hilfreiche Beiträge
    01. 08. 2008, 19:12

    Danke für den Weg in die richtige Richtung, aber ich brauche noch Hilfe ....
    Ich will den Link auf einen Marker legen:
    [TS]page.10.marks.ANMELDEN = COA
    ANMELDEN {
    typolink.parameter.dataWrap = http://url/?username={TSFE:fe_user|user|username}&email={TSFE:fe_user|user|email}
    wrap = Los gehts:|
    }[/TS]
    führt leider zu keiner Ausgabe - und ich habe das sichere Gefühl, ich mache fundamental was falsch ......
    Tipps?
    Bedank
    /
    Jens

  • steffenk steffenk
    Obi-Wan Kenobi
    0 x
    4666 Beiträge
    0 Hilfreiche Beiträge
    01. 08. 2008, 19:19

    jo, da ist was falsch :)

    COA ist nur ein Container und kein Element!

    [TS]page.10.marks.ANMELDEN = COA
    page.10.marks.ANMELDEN {
    10 = TEXT
    10.value = link
    10.typolink.parameter.dataWrap = http://url/?username={TSFE:fe_user|user|username}&email={TSFE:fe_user|user|email}
    10.wrap = Los gehts:|
    } [/TS]

  • workfare workfare
    R2-D2
    0 x
    113 Beiträge
    0 Hilfreiche Beiträge
    02. 08. 2008, 10:43

    Danke ;-)
    Und wieder was gelernt, gut dass ich gefragt habe und Danke für die Antwort.
    Baue das Montag ein
    Schönes WE
    /
    Jens

  • 1