Zum Inhalt springen

RealUrl & Liste von Variablen

Erstellt am 6. September 2005 · 10 Antworten · letzte Antwort am 6. November 2006

Tags: RealURL, Frage

Stoneage ·

Hallo Woida,

ich hab mal in einem Projekt wegen der vielen Parameter mit Pipe (|) als Trenner gearbeitet. Das kannst Du dann schön in php mit explode wieder auseinander fummeln.

In Deinem Fall wäre das:

tx_txprodukte_pi1[pid][]=1|2|6

Gruß,

T.

woida ·

Danke für den Tip, so wär die URL schon schöner, nur arbeite ich ja mit Formularen (Checkboxen):

<input name="tx_txprodukte_pi1[pid][]" type="checkbox" value="" />Produkt 1<br />
<input name="tx_txprodukte_pi1[pid][]" type="checkbox" value="" />Produkt 2<br />
...

und dann sind die URLs halt in der der von mir genannten Form. Wie soll ich die dann in die pipe-Form bringen?

Stoneage ·

Hallo Woida,

Du kannst auch mit einem js und hidden felder arbeiten. d.h du lenkst den submit auf einen js und liest alle checkboxen ab, trägst sie in ein hiddenfeld, von mir aus mit der pipe methode und machst dein ganzes formular post-method.

Gruß,

T.

mischa ·

das müsstest du in der localconf.php bei den Einstellungen für RealURL lösen.

 'postVarSets' => array(
        '_DEFAULT' => array (
            'index' => array(
                array(
                    'GETvar' => '',
                ),
            ),

            'article' => array(
                array(
                    'GETvar' => 'tx_ttnews[tt_news]',
                ),
                array(
                    'GETvar' => 'tx_ttnews[backPid]',
                ),
            ),
            'category' => array(
                array(
                    'GETvar' => 'tx_ttnews[cat]',
                ),
            ),
            'neste' => array(
                array(
                    'GETvar' => 'tx_ttnews[pointer]',
                ),


			),
            'products' => array(
                array(
                    'GETvar' => 'tx_txprodukte_pi1[pid]',
                ),
            ),
           
		
        ),
    ),
woida ·

@Tetramatrix: Ich werd etz doch keine Formulare nutzen. Jedes Produkt bekommt einen Link "hinzufügen", bei dem ich das die Produkt-id durch ein '|' dranhäge.
Also wenn zb. Produkt 2 schon ausgewählt ist:
Produkt 1: index.php?id=1&tx_txprodukte_pi1[pid]=2|1
Produkt 2: index.php?id=1&tx_txprodukte_pi1[pid]= // hier wir das Produkt2 wieder abgwählt
Produkt 3: index.php?id=1&tx_txprodukte_pi1[pid]=2|3
Produkt 4: index.php?id=1&tx_txprodukte_pi1[pid]=2|4

@mischa: Das ist die Konfiguration, wenn du jede Variable nur einmal belegt wird. Ich will die Variable x-mal belegen, wobei ich x nicht kenne.

Schön wäre halt dann eine URL à la
produkte/produkt1/produkt2/produkt5.html
wenn ich Produkt 1,2 und 5 ausgewählt hab.

FordPrefect ·

Hi,

dazu musst du für jedes Produkt eine eigene piVar anlegen um das per realurl zu erreichen. Das Problem dabei wird sein das du dann in der flexibilität nicht so frei bist und einfach ein neues Produkt anlegen kannst, denn dann musst du eben die localconf anpassen.

Edit:
Wobei, da fällt mir noch ein das du ja möglicherweise den Conf-Array in deiner Extension dynamisch anpassen kannst. Muss man mal testen inwieweit das funktionabel ist.

Gruss

Ford

woida ·

Naja, ich habs dadurch "gelöst", indem wir nachgedacht haben und beschloßen, das wir das gar nicht brauchen.