Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Usuwanie z BD za pomocą Checkbox
Forum PHP.pl > Forum > PHP
Vadd
Witajcie,

Mam problem taki że pobieram z bazy danych dane które za pomocą check box chciałbym usunąć.
Niestety problem jest taki że nie mam koncepcji na to jak to zrobić.
Proszę o jakieś podpowiedzi.
  1. <?php
  2. /* zapytanie do konkretnej tabeli */
  3. $wynik = mysql_query("SELECT * FROM obstawy")
  4. or die('Błąd zapytania');
  5.  
  6. /*
  7. wyświetlamy wyniki, sprawdzamy,
  8. czy zapytanie zwróciło wartość większą od 0
  9. */
  10. if(mysql_num_rows($wynik) > 0) {
  11. /* jeżeli wynik jest pozytywny, to wyświetlamy dane */
  12. echo '<table border="1" bordercolor="#ccc" style="background-color:transparent" width="100%" cellpadding="5" cellspacing="0">';
  13. echo "<tr>";
  14. echo "<td>Zaznacz</td>";
  15. echo "<td style='text-align: center;'>Nick obstawiającego</td>";
  16. echo "<td style='text-align: center;'>Punkty</td>";
  17. echo "<td style='text-align: center;'>Na kogo obstawia?</td>";
  18. echo "</tr>";
  19. while($r = mysql_fetch_array($wynik)) {
  20. echo "<tr>";
  21. echo "<td style='text-align: center;'><input name=\"checkbox[]\" type=\"checkbox\" id=\"checkbox[]\" value=\"".$r['id']."\"></td>";
  22. echo "<td style='text-align: center;'>".$r['nick']."</td>";
  23. echo "<td style='text-align: center;'>".$r['pkt']."</td>";
  24. echo "<td style='text-align: center;'>".$r['wygrany']."</td>";
  25. echo "</tr>";
  26. }
  27. echo "</table>";
  28. }
  29. ?>


Dziękuję,
Pozdrawiam
Piotr
piotrooo89
dodaj formularz do tych checkboxów, ustaw gdzieś przycisk i po kliknięciu usuwaj.
krowal
Może być tak:
  1. $ids = implode(',', $_POST['checkbox']); //tworzy listę id z checkboxów w postaci 2,3,4,5
  2. $query = 'DELETE FROM tabela WHERE id IN ('.$ids.');';

Oczywiście dane z $_POST powinieneś filtrować itp, pominąłem kwestie bezpieczeństwa bo nie tego dotyczy problem smile.gif
Vadd
krowal, dziękuję za odpowiedź a czy mógł byś to jakoś w całości pokazać jak to ma wyglądać ?
krowal
  1. <form action="plik.php" method="post">
  2. <input name="checkbox[]" value="21" type="checkbox"/>
  3. ...pozostałe checkboxy...
  4. </form>


plik.php:
  1. $ids = implode(',', $_POST['checkbox']); //tworzy listę id z checkboxów w postaci 2,3,4,5
  2. $query = 'DELETE FROM tabela WHERE id IN ('.$ids.');';
  3. mysql_query($query);


Wkomponuj to sobie w to co już masz i będziesz miał gotowe.
Vadd
Dziękuję Ci bardzo za odpowiedź jak nie będę mógł sobie poradzić to napiszę.

@ edit

Dzięki wielkie poradziłem sobie. Dałem pomógł wink.gif
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.