Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Odbieranie wartości w <select>, Mam mały problem dotyczący PHP / SQL
maonthe
post 20.01.2022, 23:16:45
Post #1





Grupa: Zarejestrowani
Postów: 1
Pomógł: 0
Dołączył: 20.01.2022

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


Problem mam taki iż nie mogę otrzymać wartości w <select name> które odbieram z SQL zapytaniem, mam przypisaną wartość value jako nazwisko każdej osoby z bazy lecz kiedy chcę sprawdzić obecność( po naciśnięciu submit) to do bazy trafia tylko data i wartość z checboxa a samo nazwisko niestety nie zwraca żadnej wartości, ma ktoś pomysł jak to rozwiązać?



  1.  
  2. include 'config.php';
  3.  
  4. ?>
  5. <form action="" method="POST">
  6. <select name="names">
  7.  
  8. <?php
  9.  
  10. echo "<br>";
  11. $sql = "SELECT imie,nazwisko from students";
  12. $result = $db->query($sql);
  13.  
  14. if ($result->num_rows > 0) {
  15. // wyświetla dane
  16.  
  17. while($row = $result->fetch_assoc()) {
  18.  
  19. echo "<option value='".$row['nazwisko']."'>".$row['nazwisko']."</option>";
  20. }
  21.  
  22. }
  23.  
  24. ?>
  25. </select>
  26.  
  27. </form>
  28.  
  29. <?php
  30. include 'config.php';
  31. if(isset($_POST['submit'])){
  32. $nazwisko =$_POST['names'];
  33. $time = $_POST['datavalue'];
  34. $checkbox1=$_POST['sprawdz'];
  35. $chk="";
  36. foreach($checkbox1 as $chk1)
  37. {
  38. $chk .= $chk1.",";
  39. }
  40. $sql = "INSERT INTO `frekwencja` (`id_obecności`, `nazwisko`, `data`, `obecność`) VALUES (NULL, '$nazwisko', '$time', '$chk')";
  41. $result = mysqli_query($db, $sql);
  42.  
  43. }
  44. ?>
  45.  
  46. <br>
  47. <form action="" method="POST">
  48. <p> wybierz datę </p>
  49. <input type="date" id="datavalue" name="datavalue"> <br><br>
  50. <input type="checkbox" id="1" value="1" name="sprawdz[]" onclick="getSelectItemThat(this.id)" /> Obecny
  51. <input type="checkbox" id="2" value="0" name="sprawdz[]" onclick="getSelectItemThat(this.id)" /> Nieobecny
  52. <input type="checkbox" id="3" value="2" name="sprawdz[]" onclick="getSelectItemThat(this.id)" /> Spóźniony <br><br>
  53. <button name="submit" class="btn">Srawdź obecność</button>
  54. </form>
  55.  







Rozwiązałem problem przenosząc mój kod z rozwijalną listą <option> pod checkboxy, w kodzie nic nie zmieniłem. jest ktoś w stanie wytłumaczyć dlaczego kod działa tylko w tym znaczniku <form> a w innym nie? byłbym wdzięczny

  1. <?php
  2. include 'config.php';
  3. if(isset($_POST['submit'])){
  4. $nazwisko =$_POST['names'];
  5. $time = $_POST['datavalue'];
  6. $checkbox1=$_POST['sprawdz'];
  7. $chk="";
  8. foreach($checkbox1 as $chk1)
  9. {
  10. $chk .= $chk1.",";
  11. }
  12. $sql = "INSERT INTO `frekwencja` (`id_obecności`, `nazwisko`, `data`, `obecność`) VALUES (NULL, '$nazwisko', '$time', '$chk')";
  13. $result = mysqli_query($db, $sql);
  14.  
  15.  
  16.  
  17.  
  18.  
  19. }
  20. ?>
  21.  
  22.  
  23.  
  24.  
  25. <br>
  26. <form action="" method="POST">
  27. <p> wybierz datę </p>
  28. <input type="date" id="datavalue" name="datavalue"> <br><br>
  29. <input type="checkbox" id="1" value="1" name="sprawdz[]" onclick="getSelectItemThat(this.id)" /> Obecny
  30. <input type="checkbox" id="2" value="0" name="sprawdz[]" onclick="getSelectItemThat(this.id)" /> Nieobecny
  31. <input type="checkbox" id="3" value="2" name="sprawdz[]" onclick="getSelectItemThat(this.id)" /> Spóźniony <br><br>
  32.  
  33.  
  34.  
  35.  
  36.  
  37. <form action="" method="POST">
  38. <select name="names">
  39.  
  40.  
  41. <?php
  42.  
  43. echo "<br>";
  44. $sql = "SELECT imie,nazwisko from students";
  45. $result = $db->query($sql);
  46.  
  47. if ($result->num_rows > 0) {
  48. // wyświetla dane
  49.  
  50. while($row = $result->fetch_assoc()) {
  51.  
  52. echo "<option value='".$row['nazwisko']."'>".$row['nazwisko']."</option>";
  53. }
  54.  
  55. }
  56.  
  57. ?>
  58. </select>
  59. <button name="submit" class="btn">Srawdź obecność</button>
  60. </form>


Ten post edytował maonthe 20.01.2022, 23:21:21
Go to the top of the page
+Quote Post
trueblue
post 21.01.2022, 08:06:58
Post #2





Grupa: Zarejestrowani
Postów: 6 761
Pomógł: 1822
Dołączył: 11.03.2014

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


Stworzyć jeden formularz, a nie dwa odrębne. Chyba, że potrafisz zatwierdzać dwa formularze na raz.


--------------------
Go to the top of the page
+Quote Post
nospor
post 21.01.2022, 11:09:55
Post #3





Grupa: Moderatorzy
Postów: 36 446
Pomógł: 6292
Dołączył: 27.12.2004




A ja tylko przenosze do odpowiedniego dzialu


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

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: 19.04.2024 - 01:11