Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Foreach Pytanie, Odpowiedz, jak to ugryść?
kopecsrk
post
Post #1





Grupa: Zarejestrowani
Postów: 22
Pomógł: 0
Dołączył: 30.04.2013

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


Witam.

Sprawa jest taka posiadam tabele pytania i odpowiedzi.

tabela odpowiedzi ma formularz_Id, i pytania_id

Chcę w formularzu wyświetlić pytanie + odpowiedz i tak ilokroć jest pytań i odpowiedzi.

Zrobiłem pentle w pentli czyli :

  1. foreach ($model->pytanie as $pytanie) {
  2. echo $pytanie->pytanie . '<br><br>';
  3. foreach ($model->odpowiedz as $odpowiedz) {
  4. echo $odpowiedz->odpowiedz . '<br><br>';
  5. }
  6. }


I wypluwa mi tak że mam wszystkie pytania a w środku powtarzają się wszystki odpowiedzi w jednym czyli:

Pytanie 1
odpowiedz do pytania 1
odpowiedz do pytania 2
odpowiedz do pytania 3
Pytanie 2
odpowiedz do pytania 1
odpowiedz do pytania 2
odpowiedz do pytania 3
Pytanie 3
odpowiedz do pytania 1
odpowiedz do pytania 2
odpowiedz do pytania 3

A potrzebuje :
Pytanie 1
odpowiedz do pytania 1
Pytanie 2
odpowiedz do pytania 2
Pytanie 3
odpowiedz do pytania 3

Go to the top of the page
+Quote Post
maniana
post
Post #2





Grupa: Zarejestrowani
Postów: 207
Pomógł: 44
Dołączył: 18.05.2007

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


Model odpowiedzi musi być powiązany z pytaniem... Czyli mając pytanie moglibyśmy wyświetlić przypisane do niego odpowiedzi... Czysto teoretycznie wyglądało by to tak:
  1. foreach($model->pytanie as $pytanie) {
  2. echo $pytanie->pytanie . '<br><br>';
  3. foreach($pytanie->odpowiedzi as $odpowiedz) {
  4. echo $odpowiedz->odpowiedz . '<br><br>';
  5. }
  6. }
Go to the top of the page
+Quote Post
kopecsrk
post
Post #3





Grupa: Zarejestrowani
Postów: 22
Pomógł: 0
Dołączył: 30.04.2013

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


Nie działa w ten sposób. Jedynym powiązaniem miedzy tymi tabelami jest "pytanie_id" i jest to w relacjach. Ma ktoś jeszcze jakiś pomysł jak mogę to zrobić?
Go to the top of the page
+Quote Post
maniana
post
Post #4





Grupa: Zarejestrowani
Postów: 207
Pomógł: 44
Dołączył: 18.05.2007

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


To co wcześniej napisałe, to była czysta teoria wykorzystania modeli, więc jeśli powiązanie jest i jest widoczne jako dane to może taki kierunek:
  1. foreach($model->pytanie as $pytanie) {
  2. echo $pytanie->pytanie . '<br><br>';
  3. foreach($model->odpowiedz as $odpowiedz) {
  4. if($pytanie->pytanie_id==$odpowiedz->pytanie_id) {
  5. echo $odpowiedz->odpowiedz . '<br><br>';
  6. }
  7. }
  8. }
Też napisane czysto teoretycznie.
Go to the top of the page
+Quote Post
kopecsrk
post
Post #5





Grupa: Zarejestrowani
Postów: 22
Pomógł: 0
Dołączył: 30.04.2013

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


Dzięki mordka.. ja.. to takie proste było.. nie wierze po prostu.. ;]

Chodzi o to że ja dałem ci prosty przykład tego co mam w kodzie, mój kod jest bardziej rozbudowany i tam się wywołuje model przez modele w relacjach, no sajgon, przerobiłem to co napisałeś i działa poprawnie (IMG:style_emoticons/default/smile.gif) Jeszcze raz dzieki!

Ten post edytował kopecsrk 29.05.2013, 11:22:50
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 23.09.2025 - 13:50