Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MYSQL][PHP]Odczyt wartości z checkboxów i zapis do bazy.
mokater
post
Post #1





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 8.01.2013

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


Witam.
Mam pewien problem z odczytem wartości z checkboxów i zapisem ich w bazie danych.

Na wstępie opiszę problem.

Mam dwie tabele: pytanie (idPytanie,tresc,odp1,odp2,odp3,odp4,idTest) oraz odpowiedzi(idOdpowiedz,idPytanie,tresc).
Otóż mam formularz w którym dodaje pytanie do wybranego testu.
Wygląda to tak:
(IMG:http://i.imgur.com/C9cA5.jpg)
Użytkownik wypełnia treść pytania oraz treść odpowiedzi a następnie zaznacza, która odpowiedź jest poprawna.
I teraz mam pewien problem.
Wiem, że wartości z checkboxów mam w zmiennej POST i mogę je odczytać, jednakże te, które są zaznaczone mają wartość "on".
Odczytuje je w ten sposób
  1. $odpowiedzi = $_POST['poprawnaOdp'];
  2. foreach ($odpowiedzi as $klucz) {
  3. echo $klucz;
  4. echo "<br />";
  5. }


Tylko teraz pytanie skąd wiadomo, które odp zostało zaznaczone i czy mając te odpowiedzi w tablicy mogę jakoś te dane zapisać w bazie ( mam na myśli tabele odpowiedzi, do której brakuje mi tylko właśnie odpowiedzi którą użytkownik zaznaczył)

Też myślałem aby każdy checkbox miał przypisany wartośc value, ale nie wiem jak później zapisać dane do tabeli.

Pozdrawiam,
PS. jeśli coś nie jasne to napiszcie bo trochę "namotałem: tutaj.
Dzięki !

Ten post edytował mokater 8.01.2013, 09:55:42
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
mokater
post
Post #2





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 8.01.2013

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


Formularz wygląda tak:
  1. <form action="dodajTest.php" name="dodajPytanie" method="post">
  2.  
  3. <strong>Wybierz test:</strong>&nbsp;
  4. <?php
  5. $zapytanie = $sql->wykonajZapytanie("SELECT nazwaTestu
  6. FROM test");
  7. ?>
  8.  
  9. <select name="nazwaTestu">
  10. <?php
  11. while ($wiersz = mysql_fetch_assoc($zapytanie)) {
  12. echo "<option value=" . $wiersz['nazwaTestu'] . " name=" . $wiersz['nazwaTestu'] . ">" . $wiersz['nazwaTestu'] . "</option>";
  13. }
  14. ?>
  15. </select>
  16.  
  17. <br />
  18. <strong>Treść</strong>
  19. <input type="text" name="nazwaNowegoPytania" size="56"/>
  20. <br />
  21.  
  22. <strong>Odpowiedź 1:</strong>&nbsp;
  23. <input type="text" name="odpowiedzi[odp1]" />&nbsp;
  24. <input type="checkbox" name="poprawnaOdp[odp1]" value="tak"/> Poprawna Odpowiedź ?
  25.  
  26. <br />
  27.  
  28. <strong>Odpowiedź 2:</strong>&nbsp;
  29. <input type="text" name="odpowiedzi[odp2]" />&nbsp;
  30. <input type="checkbox" name="poprawnaOdp[odp2]" value="tak"/> Poprawna Odpowiedź ?
  31. <br />
  32.  
  33. <strong>Odpowiedź 3:</strong>&nbsp;
  34. <input type="text" name="odp3" />&nbsp;
  35. <input type="checkbox" name="poprawnaOdp[odp3]" value="tak"/> Poprawna Odpowiedź ?
  36. <br />
  37.  
  38. <strong>Odpowiedź 4:</strong>&nbsp;
  39. <input type="text" name="odp4" />&nbsp;
  40. <input type="checkbox" name="poprawnaOdp[odp4]" value="tak" /> Poprawna Odpowiedź ?
  41. <br />
  42. <br />
  43. <input type="submit" name="dodajPytanie" value="Dodaj Pytanie" style="margin-left:160px;"/>
  44. </form>


i później po naciśnięciu przycisku "Dodaj Pytanie" chciałem sobie np wyświetlic 4 odp czy mi wypisze i komunikat pojawiał się taki jak wyżej napisałem.
Go to the top of the page
+Quote Post

Posty w temacie


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: 15.10.2025 - 04:10