![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 11 Pomógł: 0 Dołączył: 29.09.2011 Ostrzeżenie: (10%) ![]() ![]() |
Witam, szukałem na wielu stronach, na tej także ale nie mogę rozwiązać swojego problemu.
![]() Daje wam sam wygląd tabeli
Chciałbym, aby po zaznaczeniu checkbox-ów i kliknięciu przycisku usuń, zostały usunięte wiersze odpowiadające włączonym checkboxom. Klika danych z mojej bazy: Nazwa tabeli: subjects subject_id INT NOT NULL AUTO_INCREMENT subject_name TEXT NOT NULL ![]() //Rozwiązane jakby ktoś potrzebował
Ten post edytował interp124 30.09.2011, 10:30:04 |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 4 655 Pomógł: 556 Dołączył: 17.03.2009 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
Zapomniałeś napisać gdzie masz problem, jasnowidzami nie jesteśmy.
-------------------- Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 594 Pomógł: 122 Dołączył: 17.07.2005 Skąd: P-na Ostrzeżenie: (0%) ![]() ![]() |
no to dzialy pomyliles
![]() |
|
|
![]()
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
W petli generujesz swoje checkboxy. Jak value dla takiego checkboxa zapodajesz ID rekordu. Jako NAME checkbox nadajesz nazwę tablicową czyli nazwa[]
W ten sposób po zaznaczeniu checkboxów postem zostanie wysłana tablica zaznaczonych checkboxów pod indeksem nazwa print_r($_POST['nazwa']); Kasowanie jest banalnie proste: $sql = 'delete from tabela where ID in ('.implode(',',$_POST['nazwa']).')'; Musisz oczywiście sprawdzać, czy cokolwiek zostało wybrane. Jak nic nie wybierzesz, to $_POST['nazwa'] nie istnieje. O standardowych zabezpieczeniach przed sqlinjection już nie będę pisał. -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#5
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#6
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Bardziej chodziło mi o ten fragment
if($_POST['check']) { $sql5 = 'DELETE FROM `subjects` WHERE subjects_id in('.implode(',',$_POST['check']).')'; mysql_query($sql5); } Masz sprawdzic co idzie postem i czy nie masz błędu zapytania. O błędach zapytania w linku też było napisane -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#7
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
var_dump($_POST['check']);
print_r($_POST['check']); echo $_POST['check']; Nadgorliwość gorsza od faszyzmu.... w linku było magiczne słowo LUB. var_dump wystarczy. Ale po wysłaniu formularza tak masz? Masz to zrobić po wysłaniu formularza. Przed wysłaniem to raczeh logiczne ze w post nie masz danych -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#8
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Po wysłaniu to raczej nie możliwe. Chyba ze masz forma w formie... masz?
Zrób po wysłaniu var_dump($_POST); na początku skryptu i napisz co wyświetla Cytat I tak, aby usunąć jakiś wpis muszę 2x wysłać formularz Wybacz, bredzisz....poprostu najpierw usuwaj, a potem wyświetlaj. To chyba logiczne, ze skoro najpierw wyświetlasz, potem usuwasz, to po wyświetleniu masz listę nieaktualną, skoro najpierw wyswietlasz a potem usuwasz. Lista sie sama w magiczny sposób nie zaktualizuje po skasowaniu, skoro już ją wcześniej pobrałeś bez usuwania. -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#9
|
|
![]() Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
|
|
|
![]()
Post
#10
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Ty nawet nie przeczytałeś co ci napisałem :/
Robisz tak: wyswietlasz usuwasz dziwisz się, że po usunięciu wyswietlają się razem z usuniętymi Masz robić tak: usuwac wyswietlac i sie nie dziwic -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#11
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
.....
Ten kod: if($_POST['usun'] AND $_POST['check']) { $sql5 = 'DELETE FROM `subjects` WHERE subject_id in('.implode(',',$_POST['check']).')'; mysql_query($sql5) or die('BŁĄD:'.mysql_error()); } Masz teraz za wyświetlaniem Masz go przenieść nad wyświetlanie. Czy to takie trudne? -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#12
|
|
![]() Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
Przenieś kod usuwający nad kod wyświetlający - ot cała filozofia.
|
|
|
![]()
Post
#13
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
$wynik = mysql_query("SELECT * FROM `subjects`") or die('Błąd zapytania');
To nadal jest przed usuwaniem!! -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 12:30 |