Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> pobieranie i wyswietlanie danych
huka
post 30.10.2004, 16:16:20
Post #1





Grupa: Zarejestrowani
Postów: 96
Pomógł: 0
Dołączył: 10.03.2004
Skąd: Warszawa

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


Hej,

mam problem z napisaniem skryptu wyświetli dane z dwóch tabel. Chodzi mi o coś takiego że robie programik do testów i chciałbym aby skrypt wyświetlił pytanie zapisane wcześniej w bazie oraz aby wyświetlił odpowiedzi (w postaci pól wyboru) do tego pytania.

Mam tabele Pytyania i tabele Odpowiedzi. W tabeli Odpowiedzi znajduje sie Id pytania, do każdego pytania przypisane sa cztery odpowiwedzi. Chciałbym aby wybierając odpowiednie pytanie pojawiały sie wszystkie odpowiedzi do tego pytania w postaci pól wyboru. Następnie po wybraniu dowolnej ilość odpowiedzi zapisywane jest to do kolejnej tabeli.

Do tej pory udało mi sie stworzyć cos takiego:
  1. <?php
  2.  
  3. mysql_connect (&#092;"localhost\");
  4. mysql_select_db (generator);
  5.  
  6. $zapytanie = &#092;"SELECT * FROM Pytania\";
  7. $wykonaj = mysql_query ($zapytanie);
  8. while($wiersz=mysql_fetch_array ($wykonaj)) 
  9.  
  10. if($stan=='pokaz') {
  11. $zapytanie = &#092;"SELECT * FROM Pytania where ID_pytania=$ID_pytaniapokaz\";
  12. $wykonaj = mysql_query ($zapytanie);
  13. $tablica = mysql_fetch_array($wykonaj);
  14. echo &#092;"<form method=\"get\" action=\"pokaz.php\">
  15. <div align=&#092;"center\">
  16. <center>
  17. <table border=&#092;"0\" width=\"50%\" bordercolorlight=\"#000000\" cellspacing=\"0\" cellpadding=\"0\">
  18. <tr>
  19. <td width=&#092;"50%\"><font size=\"2\" face=\"Verdana\"><b>Treść pytania</b></font></td>
  20. <td width=&#092;"50%\" align=\"center\"><font size=\"2\" face=\"Verdana\"><input type=\"textarea\" rows=\"3\" name=\"Tresc_pytania\" value=\"\".$tablica['Tresc_pytania'].\"\" size=\"50\" ></font></td>
  21. </tr>
  22. </table>
  23. </center>
  24. </div>
  25. </form>&#092;";
  26. }
  27.  
  28. ?>
  29. <center>
  30. <form action=\"index.html\"><input type=submit value=\"Powrót do menu\">
  31. </p>
  32. </center>
  33. </form>


Nie bardzo wiem jak zmodyfikowac ten skrypt aby wyświetlał dane w taki sposób jaki pisałem wyżej.
Go to the top of the page
+Quote Post
bela
post 30.10.2004, 16:32:46
Post #2


Administrator PHPedia.pl


Grupa: Developerzy
Postów: 1 102
Pomógł: 2
Dołączył: 14.09.2003

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


a czemu po while nie ma { ?


--------------------
Go to the top of the page
+Quote Post
huka
post 30.10.2004, 16:42:39
Post #3





Grupa: Zarejestrowani
Postów: 96
Pomógł: 0
Dołączył: 10.03.2004
Skąd: Warszawa

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


A nie wiem dlaczego nie ma po while { , jakoś nie zwróciłem na to uwagi.

To co jest napisane w skrypcie działa więc nie przyglądałem się temu za bardzo.

Mam większy problem ze zrobieniem tego co pisałem wyżej. Nad tym sie cały czas głowie.
Go to the top of the page
+Quote Post
Vertical
post 30.10.2004, 19:58:27
Post #4





Grupa: Zarejestrowani
Postów: 848
Pomógł: 0
Dołączył: 7.07.2004
Skąd: Wrocław

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


  1. <?php
  2.  
  3. $id=&#092;"1\";
  4. $zapytanie = &#092;"SELECT * FROM pytania WHERE id=$id\";
  5. $wykonaj=mysql_query($zapytanie);
  6. $row=$mysql_fetch_array($wykonaj);
  7. print(&#092;"Pytanie: $row[pytanie]n\");
  8. $zapytanie=&#092;"SELECT * FROM odpowiedzi WHERE id=$id\";
  9. $wykonaj=mysql_query($zapytanie);
  10. while($wiersz=mysql_fetch_array($wykonaj))
  11. {
  12. printf(&#092;"Odpowiedz: %sn\",
  13.    $wiersz['tresc_odpowiedzi']);
  14. }
  15.  
  16. ?>

Wtedy powinien wybrać pytanie odpowiedzi do niego. Jeśliby nie poszło, to sprawdź, czy przy łączeniu nie powinno być
  1. <?php
  2. $db = mysql_connect (&#092;"localhost\", \"{user}\");
  3. mysql_select_db (&#092;"generator\", $db);
  4. ?>


Ten post edytował Vertical 30.10.2004, 20:01:08
Go to the top of the page
+Quote Post
huka
post 30.10.2004, 23:47:41
Post #5





Grupa: Zarejestrowani
Postów: 96
Pomógł: 0
Dołączył: 10.03.2004
Skąd: Warszawa

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


Po wielu próbach udało mi sie zrobić coś takiego:
  1. <?php
  2. mysql_connect (&#092;"localhost\");
  3. mysql_select_db (generator);
  4.  
  5. $zapytanie = &#092;"SELECT * FROM Pytania\";
  6. $wykonaj = mysql_query ($zapytanie);
  7. while($wiersz=mysql_fetch_array ($wykonaj)) 
  8.  
  9. if($stan=='pokaz') {
  10. $zapytanie = &#092;"SELECT * FROM Pytania where ID_pytania=$ID_pytaniapokaz\";
  11. $wykonaj = mysql_query ($zapytanie);
  12. $tablica = mysql_fetch_array($wykonaj);
  13.  echo &#092;"<form method=\"get\" action=\"pokaz.php\">
  14. <b>Tre&para;ć pytania</b>
  15. <input type=&#092;"textarea\" rows=\"3\" name=\"Tresc_pytania\" value=\"\".$tablica['Tresc_pytania'].\"\" size=\"50\" >
  16. </form>&#092;";
  17. }
  18.  
  19. $zapytanie = &#092;"SELECT * FROM Odpowiedzi\";
  20. $wykonaj = mysql_query ($zapytanie);
  21. while($wiersz=mysql_fetch_array ($wykonaj)) 
  22. echo&#092;"
  23. <b>Odpowiedz</b>
  24. <input type=&#092;"checkbox\" name=\"Odpowiedz\" value=\"$Odpowiedz\" size=\"50\" >\";
  25.  
  26. ?>


Tylko znowu jest problem bo nie pobiera żadnych danych z tabeli Odpowiedzi.
Wyświetl tylko pola checkbox i tyle.Nie pokazuje danych. Wyświetla tyle checkbox-ow ile jest wszystkich odpowiedzi w bazie. A powinno wyswietlic tylko tyle ile jest
przypisane do danego pytania.

Z pytaniami wszystko jest ok.

Nie wiem jak to przerobic aby wyswietlal danez tabeli Odpowiedzi questionmark.gif?

Ten post edytował huka 2.11.2004, 13:45:13
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 Wersja Lo-Fi Aktualny czas: 22.06.2025 - 19:38