Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][MySQL][PHP]Usuwanie userów dzięki polu checkbox
Forum PHP.pl > Forum > Przedszkole
Mody23
Witam!

W jaki sposób mogę usunąć userów, poprzez zaznaczenie ich w polu "checkbox"? Wyciągnąłem sobie wszystkich userów i to mam zrobione. Natomiast nie wiem jak pobrać, które pola zostały oznaczone + jak zidentyfikować, do którego usera, dane pole checkbox się odnosi? Innymi słowy, jak w takim przypadku sprawa wygląda z name, w polu checkbox?

Pozdr.
kadlub
jak chcesz usunąć kilku polem radio jak ono pozwala na wybranie jednej opcji
chyba musisz użyć checkbox
i wtedy name="user[]"
Mody23
Tak, pomyłke tam mam, miało być checkobox.

Czyli co, SELECTem wyciągam ID userów, potem zapisuję to w tablicy: $usun[] = $row['user_id']; i potem jak sprawdzam, które rzeczywiście zostały zaznaczone?
kaem
w checkboxach ustaw atrybut
  1. <input name="user[<?php echo $idusera ?>]" />
i id userów będziesz miał zapisane w tablicy jako klucze.
Mody23
Dokładnie tak mam.

  1. <tr>
  2. <!-- BEGIN manage_users -->
  3. <td class="row1" width="33%" style="text-align: center;">{manage_users.WHO}</td>
  4. <td width="67%" class="row2"><input type="checkbox" name="uid[{manage_users.ID}]"></td>
  5. <!-- END manage_users -->
  6. </tr>


A w kodzie php:

  1. if ( !empty($_POST['uid']) )
  2. {
  3. $del_ids = implode(',', $_POST['uid']);
  4. if ( isset($del_ids) AND !empty($del_ids) )
  5. {
  6. $sql = "DELETE FROM " . USER_GROUP_COMMUNITY . " WHERE group_community_id = $id_grupy AND user_id IN ($del_ids)";
  7. if ( !($res = $db->sql_query($sql)) )
  8. {
  9. message_die(GENERAL_ERROR, 'jakis error', '', __LINE__, __FILE__, $sql);
  10. }
  11. else
  12. {
  13. message_die(GENERAL_ERROR, 'Pomyślnie usunięto użytkowników');
  14. }
  15. }
  16. }
  17. else
  18. {
  19. message_die(GENERAL_ERROR, 'Nie wybrales usera');
  20. }


I teraz przy usuwaniu:

Kod
SQL Error : 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'on)' at line 1


Jak echuję zmienną $del_ids, to wychodzi mi jakieś ON. Co jest nie tak?
kadlub
  1. <form action="testowy.php" method="post">
  2. <input type="checkbox" name="usun[]" value="id_z_bazy1" />
  3. <input type="checkbox" name="usun[]" value="id_z_bazy2" />
  4. <input type="checkbox" name="usun[]" value="id_z_bazy3" />
  5. <input type="checkbox" name="usun[]" value="id_z_bazy4" />
  6. <input type="checkbox" name="usun[]" value="id_z_bazy5" />
  7. <input type="submit" value="usun" />
  8. </form>
  9. <?php
  10. print_r($_POST['usun']);
  11. echo count($_POST['usun']);
  12. ?>

masz prosty przykład sprawdzasz ile elementowa jest tablica robisz for w którym tworzysz zapytania wstawiasz wartość tablicy w warunku zapytania i usuwasz
Mody23
Tak, mam wink.gif dzięki.
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.