Nefungujuci snippet s premennou

vladimir.biro
Člen | 163
+
0
-

Ahojte.

Mam jeden problem, ktory mi absolutne nejde do hlavy.

Mam dva snippety:

		{var $premenna = 15}

        {snippet test-{$premenna}}
            {= rand(1, 6000)}
        {/snippet}

        {snippet test-16}
            {= rand(1, 6000)}
        {/snippet}

Ked si ten kus kodu pozriem v zdrojaku webu, vygeneruje sa to ako:

<div id="snippet--test-15">4280</div>
<div id="snippet--test-16">236</div>

V spracovani mam potom:

$this->redrawControl('test-15');
$this->redrawControl('test-16');

No prekresli sa mi iba snippet test-16, cize ten ktory mam priamo zadany cislom.
Ten, ktory ma hodnotu 16 cez premennu, ten sa neprekresli.

Ako je to prosim mozne?

Dakujem za rady.

Editoval vladimir.biro (29. 2. 2024 11:46)

m.brecher
Generous Backer | 905
+
0
-

@vladimirbiro

Ten, ktory ma hodnotu 16 cez premennu, ten sa neprekresli.

Takhle od pohledu to z doloženého kódu nedokážu říct, ale:

a) dynamické snippety by měly být použity uvnitř {snippetArea}
b) snippetArea by se měla také překreslovat společně s dynamickými snippety
b) proměnná $premenna je lokální a nepřenese se dovnitř snippetArea, je potřeba ji nastavit uvnitř

Zajímavé je, že tam snippetArea nemáš a nějak se Ti to vykreslí. Zkus to přesně podle dokumentace – doplnit snippetArea a nechat ji také překreslit ve zpracování, třeba se to takhle vyřeší.