Robię wyświetlanie wyników sondy i takim skryptem
  1. <?php
  2. $menu = new menu;
  3. $menu -> GetPollQuestion(); // pobiera pytanie do sondy
  4. $smarty -> assign('poll_question', $menu -> row); // "wysyła" pytanie do pliku z sondą (menu.tpl)
  5. foreach ($menu -> row as $question){
  6. $question_id = $question['id'];
  7. $menu = new menu;
  8. $menu -> GetPollAnswers($question_id); // pobiera pytania z bazy danych
  9. $smarty -> assign('poll_answers', $menu -> row); // dołącza pytania do pliku menu.tpl
  10. foreach ($menu -> row as $answer){
  11. $menu = new menu;
  12. $menu -> AllVoices($question_id); // pobiera ilość wszystkich głosów dla danej sondy
  13. if ($answer['votes'] <> 0 && $menu -> all <> 0){
  14. $procent = round(($answer['votes'] * 100 / $menu -> all), 1); // oblicza procent głosów
  15. $bar_width = ceil(($answer['votes'] * 100 / $menu -> all)); // oblicza długoś paska
  16. $smarty -> assign('procent', $procent); // dołacza procent głosów do pliku menu.tpl
  17. $smarty -> assign('bar_width', $bar_width); // dołącza długość paska do pliku menu.tpl
  18. }
  19. }
  20. }
  21. ?>

pobieram pytania i odpowiedzi oraz obliczma długośc paska dla każdej z odpowiedzi, potem przesyłam to do pliku menu.tpl któryu wygląda tak (fragment z sondą)
  1. {foreach from=$poll_question item=question}
  2. <tr>
  3. <td colspan="2" class="text_01" style="height: 20px; background-color: {$color_2}"><b>{$question.question}</b></td>
  4. </tr>
  5. {/foreach}
  6. {if !isset($smarty.cookies.sonda)}
  7. <form action="{$smarty.server.PHP_SELF}" method="post">
  8. {foreach from=$poll_answers item=answers}
  9. <tr>
  10. <td><input type="radio" name="voice[]"></td>
  11. <td class="text_01">{$answers.answer}</td>
  12. </tr>
  13. {/foreach}
  14. <tr>
  15. <td colspan="2" class="text_03"><input type="submit" name="vote" value="Głosuj !"></td>
  16. </tr>
  17. </form>
  18. {else}
  19. {foreach from=$poll_answers item=answers}
  20. <tr>
  21. <td class="text_01">{$answers.answer}</td>
  22. </tr>
  23. <tr>
  24. <td><img src="templates/Blue/images/poll.gif" style="height: 10px; width: {$bar_width}px; border: 1px solid #000000"> {$procent}%</td>
  25. </tr>
  26. {/foreach}
  27. {/if}

i wszystko było by pieknie gdyby nie to, że procent i długość paska dla wszystkich odpowiedzi jest taka sama (dokładnie jest to długość i procent dla ostatniej odpowiedzi sleep.gif)
i pytanie co ja tu mam źle ohmy.gif