[Smarty] array associativi con nome indice dinamico

Salve gente,

devo accedere ad un array associativo dinamico in un file .tpl di smarty...

in php faccio cos:

for ($i=0; $i<count($a); $i++)
   echo $a['ciao_' . $i];

come posso fare invece nel template?

grazie in anticipo per l'aiuto

inviato 10 anni fa
Xscratch
X 0 X

non puoi usare un foreach?

risposto 10 anni fa
Gianni Tomasicchio
X 0 X

infatti uso un foreach, il fatto che devo scorrere 2 array con lo stesso numero di elementi

anzi, il secondo un'oggetto HTML_QUickForm...

( sempre lo stesso discorso che avevo postato nell'altro topic...)

risposto 10 anni fa
Xscratch
X 0 X

il secondo un array dell'oggetto HTML_QUickForm?

risposto 10 anni fa
Gianni Tomasicchio
X 0 X

ok, cancella tutto quello che ho detto(scritto):

il problema un'altro:

devo accedere non ad un array con quell'indice ma ad un oggetto

ed ora posto tutta la sezione:

{section name=customer loop=$data}
{if $smarty.section.customer.rownum is odd}
<tr>
<td class="row1">{$data_grid.check_1.html}</td>
<td class="row1">{$data[customer]->get_id_agenzia()}</td>
<td class="row1">{$data[customer]->get_nome()}</td>
<td class="row1">{$data[customer]->get_note()}</td>
</tr>
{else}
<tr>
<td class="row2"></td>
<td class="row2">{$data[customer]->get_id_agenzia()}</td>
<td class="row2">{$data[customer]->get_nome()}</td>
<td class="row2">{$data[customer]->get_note()}</td>
</tr>
{/if}
{sectionelse}
<tr>
<td colspan="4">no data</td>
</tr>
{/section}

dove l'oggetto HTML_QUickForm :

for ($i=0; $i < count($DATA); $i++) {
$obj_name = 'check_' . $DATA[$i]->get_id_agenzia();
$data_grid->addElement('checkbox', $obj_name, '');
}
il secondo un array dell'oggetto HTML_QUickForm?

ehm,volevo dire un oggetto....

ho scritto un mucchio di c****te! scusa la confusione ma dope 2 giorni sempre sullo stesso problema non so pi dove sbattere la testa! :uglystupid:

risposto 10 anni fa
Xscratch
modificato 10 anni fa
X 0 X

scrivi, in PHP, quello che vorresti ottenere, altrimenti non so cosa "tradurre" in tag Smarty

risposto 10 anni fa
Gianni Tomasicchio
X 0 X

allora:

// array dei dati
$DATA =array(1 => array('id' => '1',
'nome' => 'nome_prova1',
'note' => 'notesadfasd'
),
 2 => array('id' => '2',
'nome' => 'nome_prova2',
'note' => 'notesadfasdasdfs'
)
);

// per ogni dato definisco il checkbox
for ($i=0; $i < count($DATA); $i++) {
$obj_name = 'check_' . $DATA[$i]['id'];
$data_grid->addElement('checkbox', $obj_name, '');
}

poi ovviamente assegno le variabili al template e faccio le mie cose.... ;)

e nel .tpl voglio una cosa cos:

+--------------------------------+
+checkbox+id+nome+note+
+------------+--+-------+------+
|        |  |     |    |
|        |  |     |    |
+------------+--+-------+------+

(vabb l'ascii quello che cmq penso tu abbia capito) ::)

PS mi scuso ancora per aver creato un'altra discussione...

risposto 10 anni fa
Xscratch
X 0 X

ti rispondo nell'altra discussione.

risposto 10 anni fa
Gianni Tomasicchio
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda