Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [smarty] Nie wszystko pokazuje
Lee
post
Post #1





Grupa: Zarejestrowani
Postów: 319
Pomógł: 0
Dołączył: 11.04.2006
Skąd: Chojnów

Ostrzeżenie: (0%)
-----


Mam problem ze smarty otóż robię sondę i mam dwie tabele poll i poll_answers struktura
poll
Kod
id        question        started        ended
2     Jak oceniasz Onet ?     13.11.2006     18.11.2006
1     Co słychać ?     08.08.2006     09.08.2006
3     abcd?     18.11.2006

poll_answers
Kod
id        question_id        answer        votes
1     2     Jest świetny     123
2     2     Może być     15
3     2     Nie podoba mi się     0
4     1     Spoko     12
5     1     Źle     1
6     3     a     12
7     3     b     78
8     3     c     451
9     3     d     50

no i takim kodem pobieram pytania i odpowiedzi z bazy danych
  1. <?php
  2. $db_query = "SELECT * FROM $tbl_poll WHERE ended<>''";
  3. $mysql -> fetch_assoc($db_query);
  4. $smarty -> assign('poll_question', $mysql -> row);
  5. foreach ($mysql -> row as $poll_question) {
  6. $mysql = new MySQL;
  7. $db_query = "SELECT * FROM $tbl_poll_answers WHERE question_id='".$poll_question['id']."'";
  8. $mysql -> fetch_assoc($db_query);
  9. $smarty -> assign('answers', $mysql -> row);
  10. }
  11. $smarty -> display("$theme/index.tpl");
  12. ?>

i wyświetlam
Kod
<table cellspacing="0" cellpadding="0" style="border: 0px">
        {foreach from=$poll_question item=poll_q}
            <tr>
                <td><b>{$poll_q.question}</b></td>
            </tr>
        {/foreach}
        {foreach from=$answers item=answers}
            <tr>
                <td>{$answers.answer}</td>
            </tr>
        {/foreach}
    </table>

ale to mi wyświetla takie coś:
Jak oceniasz Onet?
Co słychać ?
Spoko
Źle
tzn. nie pokazuje pytań do pierwszego pytania co mam źle ? (Pewnie nikt nic nie odpowie, ale to chyba jest jakaś zasada ze smarty)


--------------------
Nie pomagam w sprawach php na GG i PW od tego jest forum!
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
dr_bonzo
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

Ostrzeżenie: (0%)
-----


Cytat
(Pewnie nikt nic nie odpowie, ale to chyba jest jakaś zasada ze smarty)
Takie teksty zwiekszaja prawdopodobienstwo nieuzyskania odpowiedzi...

  1. <?php
  2. $smarty -> assign('answers', $mysql -> row);
  3. ?>

wykonujesz to wiele razy (w petli) i tylko ostation przypisana wartosc bedzie zachowana (dostepna w szablonie).


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post
Lee
post
Post #3





Grupa: Zarejestrowani
Postów: 319
Pomógł: 0
Dołączył: 11.04.2006
Skąd: Chojnów

Ostrzeżenie: (0%)
-----


Akurat wiem, że wartość się nadpisuje, ale nie za bardzo mam idea jak to naprawić :] chciałem wszystkie wpisy do tablicy i po foreach przesłać do template'a, ale to jest więcej niz jedna kolumna z bazy danych więc raczej nie działa


--------------------
Nie pomagam w sprawach php na GG i PW od tego jest forum!
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 09:14