Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Parę Checkbox'ów
Forum PHP.pl > Forum > PHP
Zatarra
  1. <table border="1px" cellpadding="2px" cellspacing="2px" align="center" style="background-color: #CCC;">
  2. <tr style="background-color:#000; color: #FFF;">
  3. <td>Admin</td>
  4. <td>ID<br>Pracownika</td>
  5. <td>Login<br>Pracownika</td>
  6. <td>Klucz<br>Pracownika</td>
  7. <td>Status</td>
  8. <td>Potwierdz</td>
  9. <td>Usuwanie</td>
  10. </tr>
  11. <form method="post" action="adminpanel.php">
  12. <?php
  13. $import = 'SELECT ID, AKCEPTACJA, ID_DZIEKANATU, KOD FROM ADMIN_PANEL;';
  14. $zapytanie = mysql_query($import);
  15.  
  16. function get_dane_d()
  17. {
  18. global $Login_P;
  19. global $id_d;
  20.  
  21. $import2 = 'SELECT LOGIN FROM DANE_DZIEKANATU WHERE ID='.$id_d.';';
  22. $zapytanie2 = mysql_query($import2);
  23. $line2 = mysql_fetch_array($zapytanie2);
  24. extract($line2);
  25. $Login_P = $LOGIN;
  26.  
  27. }
  28. echo $_SESSION['nr_i'].'<br>';
  29. $n=1;
  30. while( $n < $_SESSION['nr_i'])
  31. {
  32. echo '<br>wszedłem do petli<br>';
  33.  
  34. if( isset($_POST['tablica[1]']) )
  35. {
  36. echo $n.' ma zaznaczoną wartość';
  37. }
  38. $n= $n+1;
  39. }
  40.  
  41. $_SESSION['nr_i'] = 1;
  42. $akcept = 'Akceptuj - <input type="checkbox" name="tablica[]" values="'.$_SESSION['nr_i'].'" />';
  43. $usun = 'Usuń<br> - <input type="checkbox" name="tab[]" values="'.$_SESSION['nr_i'].'" />';
  44.  
  45. while($line = mysql_fetch_array($zapytanie))
  46. {
  47. $id_a = $line['ID'];
  48. $status = $line['AKCEPTACJA'];
  49. $id_d = $line['ID_DZIEKANATU'];
  50. $klucz = $line['KOD'];
  51.  
  52. get_dane_d();
  53.  
  54. echo '<tr>';
  55. echo '<td>' .$id_a. '</td>';
  56. echo '<td>' .$id_d. '</td>';
  57. echo '<td>' .$Login_P. '</td>';
  58. echo '<td>' .$klucz. '</td>';
  59. echo '<td>' .$status. '</td>';
  60. echo '<td>' .$akcept. '</td>';
  61. echo '<td>' .$usun. '</td>';
  62. $_SESSION['nr_i'] = $_SESSION['nr_i'] + 1;
  63. echo '</tr>';
  64. }
  65. ?>
  66. </table>
  67. <input type="submit" name="submit" value="Zatwierdz" style="font-size: 10pt; font-family: Tahoma;"/>
  68. <input type="reset" value="Wyczyść" style="font-size: 10pt; font-family: Tahoma;"/>
  69. </form>

isset($_POST['tablica[1]'] - nie wchodzi jak zaznaczę checkboxa (1 nadałem ręcznie żeby sprawdzić czy name="tablica[]" values="'.$_SESSION['nr_i'].'" Gdzie $_SESSION['nr_i'] == 1 jest zaznaczone w POST). Nie wiem co robie źle.
To największy problem z jakim do tej pory się spotkałem..

Przeznaczenie powyższego skryptu? Chodzi o to że jeżeli checkbox jest zaznaczony to zmieniam coś w bazie jesli nie to zostaje jak jest.
CuteOne
nie $_POST['tablica[1]'] tylko $_POST['tablica'][1]

żebyś nie latał co chwile na forum - każdą zmienną, możesz potraktować var_dumpem aby wyświetlić jej zawartość np.

  1.  
  2. $_POST = array('a'=>12, 'b'=>array('abc'));
  3. $xyz = 'fhrufirhi';
  4.  
  5. echo '<pre>';
  6. var_dump($_POST); // gdy chcesz "prześwietlić" tablice zamiast var_dump, możesz użyć print_r($tablica)
  7. echo '</pre>';
  8.  
  9. echo '<br><br>';
  10.  
  11. echo '<pre>';
  12. var_dump($xyz);
  13. echo '</pre>';
  14.  
Zatarra
Męczyłem się parę godzin z checkboxem i dałem za wygraną.
Postanowiłem rozwiązać to za pomocą przesyłanych wartości w adresie url.
Kod
echo '<td>' .$status. '</td>';
echo '<td><a href="adminpanel.php?action=edit&idp='.$id_d.'">[TAK]</a></td>';
echo '<td>' .$usun. '</td>';
CuteOne
  1. foreach($_POST['tablica'] as $list) {
  2.  
  3. echo $list.'<br />';
  4. }
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.