Druckversion des Themas

Hier klicken um das Topic im Orginalformat anzusehen

Forum Sefrengo.org _ Entwicklung _ $cms_mod['value']

Geschrieben von: Aki Wed. 23. August 2006, 11:57

Hallo ,

die Frage geht wohl mehr an bjoern. wink.gif
Aber es sollen ja alle was davon haben.

Wieso kann ich bei der Modulprogrammierung unter der neuesten Version nicht mehr mit $cms_mod['value'][$k]
auf die Values zugreifen ?
Das geht nur noch über "MOD_VALUE[0]". Das ist aber hinderlich wenn ich z.b.
mehrere Werte auslesen will ala
for($i=0; $i <$k;$i++){
echo "MOD_VALUE[$i]";
}
dann gibt er nur MOD_VALUE[0],MOD_VALUE[1]... usw aus aber nicht die Werte.

Gibt es da eine Lösung ?

Geschrieben von: saschapi Wed. 23. August 2006, 15:07

lad doch einfach alle MOD_VALUEs ganz zu anfang des Moduls in ein Array. dann kannst du das in der schleife mit
echo MOD_VALUE_array[$i]; auslesen.

Die MOD_VALUEs werden halt einfach ersetzt und ein MOS_Value[$i] ersetzt er halt natürlich nicht. wenn dann das php läuft, isnd die MOD_Values bereits ersetzt und es wird wie ein String behandelt. :-)

Geschrieben von: Aki Wed. 23. August 2006, 15:19

ZITAT(saschapi @ Wed. 23. August 2006, 16:07) *
lad doch einfach alle MOD_VALUEs ganz zu anfang des Moduls in ein Array.


und wie soll ich das machen ? blink.gif

Das Problem ist ja das es dynamisch ist.. ich weiss nur die Anzahl ($k) der Modvalues

for($i=0; $i <$k;$i++){
$array[]= "MOD_VALUE[$i]";
}
geht ja nicht. oder doch ? unsure.gif

Geschrieben von: saschapi Wed. 23. August 2006, 15:49

wenn du die anzahl der MOD_Values nicht weißt, weiß ich auch nicht weiter wink.gif

Geschrieben von: mistral Wed. 23. August 2006, 20:46

wie kommst du darauf, dass das nicht mehr funktionieren sollte?
Im Kontaktforumlar z.B. wir genau so darauf zugegriffe:

QUELLTEXT
if (is_array($cms_mod['value'])) {
foreach($cms_mod['value'] AS $k => $v){
    echo '$mvars["'.$k.'"] = "'. addslashes($v) .'";'."\n";
}}


Gruss
Mistral

Geschrieben von: bjoern Thu. 24. August 2006, 00:04

Ich denke es liegt daran, das der $cms_mod Array nur innerhalb von gecachten PHP sichtbar ist, also innerhalb von <CMSPHP:CACHE>...</CMSPHP:CACHE>, bzw. <?php ...> in der Modul Frontendausgabe.

Innerhalb von <CMSPHP> ... </CMSPHP> ist der Array nicht sichtbar. Mit dem Code den Mistral einen Post weiter oben gepostet hat, kannst Du den Array aber auch innerhalb von dynamischen Inhalten sichtbar machen.

Geschrieben von: Aki Thu. 24. August 2006, 09:11

aaaaahhhh..... Supi..

besten Dank smile.gif

Unterstützt von Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)