Witam.

Najpierw kod:

skrypt.php
  1. <?php
  2. $q = mysql_query(&#092;"SELECT n.id, n.temat FROM news n\");
  3. $r = mysql_fetch_assoc($q);
  4.                         
  5. $smarty->assign(&#092;"dane\", $r);
  6. $smarty->display(&#092;"wynik.tpl\");
  7. ?>


wynik.tpl
Kod
{section loop=$dane name=i}
{if $smarty.section.i.first}
       <table>
{/if}
       <tr>
               <td>{$dane[i].temat}</td>
       </tr>
{if $smarty.section.i.last}
       </table>
{/if}
{sectionelse}
       Nie ma żadnych informacji.
{/section}



Chciałbym, aby wyświetlało mi na stronie listę tematów (pobieranych wcześniej z bazy), dzięki {section} smarty. Nie wiem jednak co w kodzie u góry jest nie tak.

Pomocy winksmiley.jpg

---
edit:

Zmieniłem kod z skrypt.php na:

  1. <?php
  2. $q = mysql_query(&#092;"SELECT id, temat FROM news\");
  3. while($r = mysql_fetch_row($q)) {
  4.            $i++;
  5.                         
  6.            $id[$i] = $r[0];
  7.            $temat[$i] = $r[1];
  8. }
  9.                 
  10. $smarty->assign(&#092;"dane\", $id);
  11. $smarty->assign(&#092;"temat\", $temat);
  12. $smarty->display(&#092;"wynik.tpl\");
  13. ?>


I wyświetla niemalże dobrze, jedyny mankament to to, że gdy mam 10 wartości w tablicy (np. $id), wyświetla tylko 9, nie wyświetląjac ostatniej. Dlaczego?

---
edit 2:

Problem rozwiązany bardzo banalnie.. heh.. winksmiley.jpg