Array in Liste umwandeln [Gelöst]

  • maxhb maxhb
    Flash Gordon
    0 x
    2148 Beiträge
    0 Hilfreiche Beiträge
    18. 11. 2008, 18:29

    Hallo,
    ich habe in einem Formular eine Select-Box, in der mehrere Werte ausgewählt werden können.

    [code]<select id="foo">
    <option value="1">aaa</option>
    <option value="2">bbb</option>
    <option value="3">ccc</option>
    </select>[/code]

    Die per Post übermittelten Werte werden von PHP dabei als Array interpretiert.

    Auf die einzelnen Array-Elemente kann ich per TS zugreifen:
    [ts]wert = TEXT
    wert.data = GP:foo|1[/ts]

    Ich benötige allerdings aller(!) Elemente des Arrays als Komma separierte Liste.

    Kann man das per TS erreichen?!

    CU
    maxhb


  • 1
  • just2b just2b
    TYPO3-Yoda
    0 x
    18741 Beiträge
    2 Hilfreiche Beiträge
    18. 11. 2008, 18:36

    Hallo,

    wohl am besten per userfunction und php mit implode ;)

    georg

  • maxhb maxhb
    Flash Gordon
    0 x
    2148 Beiträge
    0 Hilfreiche Beiträge
    18. 11. 2008, 18:41

    Hi!
    [quote="just2b"]wohl am besten per userfunction und php mit implode ;)[/quote]
    OK, das ist auf jeden Fall eine Option.

    Ich hatte nur gehofft, dass es quasi eine Inverse Methode zu listNum gibt, womit man ja auf Werte Komma separierter Listen zugreifen kann...

    CU
    maxhb

  • einpraegsam.net einpraegs...
    MacGyver
    0 x
    9340 Beiträge
    80 Hilfreiche Beiträge
    18. 11. 2008, 19:06

    Ich habe mal irgendwo ein Javascript Schnipsel gehabt, dass bei Auswahl einer Selectbox das Value in ein Hiddenfield geschrieben hat. Das Ganze war kommasepariert...

    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/

  • maxhb maxhb
    Flash Gordon
    0 x
    2148 Beiträge
    0 Hilfreiche Beiträge
    18. 11. 2008, 19:25

    Hallo,
    [quote="einpraegsam.net"]Ich habe mal irgendwo ein Javascript Schnipsel gehabt, dass bei Auswahl einer Selectbox das Value in ein Hiddenfield geschrieben hat.[/quote]
    Schön das der Powernmailer auch dabei ist, Du hast ja mein ganzes Problem verursacht ;-) (Siehe: http://www.typo3.net/forum/list/list_post//77259/)

    hab's nun folgendermaßen gelöst:
    [ts]plugin.tx_powermail_pi1 {
    dbEntry {
    tt_news {
    tx_application = USER
    tx_application {
    userFunc = user_quadracom->powermail_implode_sesData
    dataId = powermail_922|uid901
    }
    }
    }
    }[/ts]

    Und dann folgende PHP Userfunction:

    1. class user_quadracom {
    2. function powermail_implode_sesData($content,$conf) {
    3. list($powermail,$field) = explode('|',$conf['dataId']);
    4. $return = implode(',',$GLOBALS['TSFE']->fe_user->sesData[$powermail][$field]);
    5. return $return;
    6.  
    7. }
    8. }

    Nicht ganz so elegant, wie ich gehofft hatte, aber aktuell genügt das erst einmal.

    CU
    maxhb

  • einpraegsam.net einpraegs...
    MacGyver
    0 x
    9340 Beiträge
    80 Hilfreiche Beiträge
    18. 11. 2008, 20:55

    Ich habe dein Problem verursacht? Ich würde das jetzt auch nicht anders machen - oder würdest du die Werte kommasepariert speichern? :D

    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/

  • maxhb maxhb
    Flash Gordon
    0 x
    2148 Beiträge
    0 Hilfreiche Beiträge
    18. 11. 2008, 20:58

    [quote="einpraegsam.net"]
    Ich habe dein Problem verursacht? Ich würde das jetzt auch nicht anders machen - oder würdest du die Werte kommasepariert speichern? :D
    [/quote]
    Tja, leider kann ich mir das an der Stelle nicht so recht aussuchen, eine MN-Tabelle wäre mir auch lieber gewesen...

    CU
    maxhb

  • 1