Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: jak to zidentyfikowac?
Forum PHP.pl > Forum > Przedszkole
hmmm
robie sobie panel administracyjny - oparty na plikach cookie - i mam pewien problem.

wszystko mam oparte na mysql. mam kilka tabel, m.in. ksiega, w ktorej przechowuje, rzecz naturalna, wpisy.

otoz chce miec tam mozliwosc wyswietlenia wszystkich wpisow, ale bez tresci, czyli id (chociaz nie wiem, czy bedzie potrzebne), nick, czas i teraz obok kazdego wpisu dac pole checkbox (numery bede zwiekszac poprzez $numer++).
po zaznaczeniu jednego badz kilku checkboxow i kliknieciu usun (type="submit") chcialbym, aby wszystkie zaznaczone zostaly usuniete, ale nie wiem, jak mam sprawdzac, ktore zostaly zaznaczone i jak je potem usunac ...

prosze o jakies wskazowki, rady worriedsmiley.gif
bigZbig
Generujesz pola input

  1. <?php
  2.  
  3. print '<input type=\"checkbox\" name=\"remove[]\" value=\"'.$id.'\" /> Usuń';
  4.  
  5. ?>


Nastepnie jesli przy danym wpisie zostalo zaznaczone pole checkbox to po kliknieciu przycisku submit w tablicy $remove powinno sie znalesc id tego wpisu.

Nastepnie dla kazdego wpisu sprawdzasz czy jego id jest w tablicy $remove i jesli jest wykonujesz funkcje usunWpis.

  1. <?php
  2.  
  3. function usunWpis($id) {
  4. $query=&#092;"DELETE FROM nazwa_tabeli WHERE id=$id\";
  5. //dalesze instrukcje dazace do wykonania zapytania sql
  6. }
  7.  
  8. if (in_array ($id, $remove)) usunWpis($id);
  9.  
  10. ?>
kszychu
To sotatnie trochę mało optymalne. Po co tyle zapytań ile usuwanych wpisów? Nie może byc jedno zapytanie? Ano może.
  1. <?php
  2. $query = 'DELETE FROM nazwa_tabeli WHERE 1 = 0';
  3. foreach($remowe as $id)
  4.  $query .= &#092;" OR id = '{$id}'\";
  5. ?>
scanner
A może, eliminując tasiemcowe "OR" i zapętlanie, zrobić tak:
  1. <?php
  2. $query = 'DELETE FROM nazwa_tabeli WHERE id IN ('.implode(',', $remowe).');';
  3. ?>
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.