Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php][mysql] Wyświetlenie wybranych opcji
Forum PHP.pl > Forum > Przedszkole
Lee
Mam pytanie, jak wyświetlić zaznaczone opcje ? (checkbox). bo cosik nie widzi mi się, że:
$_POST['opt'];
gdzie $opt to nazwa danego check box, np mam name="opt[1]", name="opt[2]..."
to jak wyświetlić to 1 jeżeli je zaznacze ?
nospor
dla kazdego name nadaja: name="opt[]" bez zadnych 1,2,3....
w post pod indexem opt, otrzymasz tablice zaznaczonych checkboxów, a konkretnie ich wartosci
Lee
od momentu tego "w post pod indexem..." nie kapuje :/
nospor
oj winksmiley.jpg
  1. <?php
  2.  
  3. print_r($_POST['opt']);
  4.  
  5. ?>

a teraz?

Chodzi oto, ze bedzie tam zawarta tablica, ktorej wartosciami będą wartosci zaznaczonych checkboxow. Jesli nie zaznaczysz zadnego checkboxa, to $_POST nie bedzie mial elementu o indexie opt
Lee
jak dalem ten kod powyzej to pokazuje mi takie coś
Cytat
Array ( [0] => on [1] => on )
:|
nospor
bo nie dales zadnych value dla checkboxów. pisalem ze zwrocu wartosc. jak jej nie okresliles, to nie moja wina smile.gif

nadaj jakies konkrente value="costamsrostamkazdeinnedlakazdegocheckboxa" i zobacz co wtedy dostaniesz winksmiley.jpg

ps: zazywczaj jest to np. id rekordu
Lee
no dobra, poddaje się
mam taki kod
  1. <?php
  2. $wykonaj = mysql_query("SELECT * FROM $tbl_komentarze");
  3. while ($wynik = mysql_fetch_array($wykonaj)){
  4. $ListaKomentarzy[] = $wynik;
  5. }
  6. echo '<form action="administracja.php?mod=komentarze&sid='.session_id().'" method="post">';
  7. foreach ($ListaKomentarzy as $Komentarze){
  8. echo '
  9. <table width="650" cellspacing="0" cellpadding="0">
  10. <tr>
  11. <td class="text_02" style="width: 150px; background-color: '.$kolor[1].'"> '.$Komentarze['tytul'].'</td>
  12. <td class="text_02" align="center" style="width: 100px; background-color: '.$kolor[2].'"> '.$Komentarze['czas'].'</td>
  13. <td class="text_02" align="center" style="width: 100px; background-color: '.$kolor[1].'"> '.$Komentarze['autor'].'</td>
  14. <td class="text_02" align="center" style="width: 140px; background-color: '.$kolor[2].'"> '.$Komentarze['ip'].'</td>
  15. <td class="text_02" align="center" style="width: 140px; background-color: '.$kolor[1].'"> <b>Opcje</b></td>
  16. <td class="text_02" align="center" style="width: 20px; background-color: '.$kolor[2].'"><input type="checkbox" name="opt[]" value="'.$Komentarze['id'].'"></td>
  17. </tr>
  18. </table>';
  19. }
  20. echo '<table width="650" cellspacing="0" cellpadding="0">
  21. <tr>
  22. <td align="right"><input type="submit" class="kasuj" name="kasuj" value="Usuń zaznaczone"></td>
  23. </tr>
  24. </table></form>';
  25. if (isset($_POST['kasuj'])){
  26. print_r($_POST['opt']);
  27. }
  28.  
  29. ?>

a mimo to nadal wywala mi
Cytat
Array ( [0] => 1 [1] => 2 )
siemakuba
hehe :)
najpierw piszesz ze pokazuje ci:
Kod
Array ( [0] => on [1] => on )

a potem ze mimo zmian nadal pokazuje ci:
Kod
Array ( [0] => 1 [1] => 2 )


no to jak ci pokazuje? nospor ci napisal co zrobic, zrobiles to i IMHO dziala jak powinno. Tylko czemu nie chcesz tego zauwazyc?
  1. <input type="checkbox" name="opt[]" value="'.$Komentarze['id'].'">

przypisujesz do value="" w czekboksie ID komentarza. czy przypadkiem ten print_r() nie wyswietla ci wlasnie tych ID komentarzy jako kolejnych elementow tablicy?

pozdr.
Lee
id w bazie danych zaczyna sie od 1, a w array od 0 winksmiley.jpg chce aby kasowalo zaznaczone kometarze z bazy danych, ale nie wiedzialem jak sie za to zabrac wiec spróbowałem tak i nic z tego nie wychodzi ;/
nospor
raz, dwa , trzy... wdech , wydech.... spokojnie nospor, spokojnie.... smile.gif

Cytat(nospor)
Chodzi oto, ze bedzie tam zawarta tablica, ktorej wartosciami będą wartosci zaznaczonych checkboxow.

rozrozniasz pojecie wartosc i index elementu tablicy?index to w twoim przypadku 0,1, a wartosc, to wartosci pod tymi indexami 1,2
czyli jest tak jak byc powinno
te 1 i 2 to są Twoje id.
a te 0 i 1 to se mozesz olac
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.