![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 372 Pomógł: 2 Dołączył: 10.05.2009 Ostrzeżenie: (0%) ![]() ![]() |
System komentarzy na mojej stronie działa w ten sposob ze komentarz najpierw przesyłany jest do mnie do weryfikacji i ja albo go publikuję albo usuwam. Kod:
Chciałbym go przekształcić abym mógł jednocześnie usuwać np. 10 komentarzy. W tym celu dodałem linikę: echo '<input type="checkbox" value="{$rezult[\'id\']}" /> '; tak by można było klikać checkboxy z artykułami, które mają być usunięte. Następnie dodałem formularz z listą rozwijalną, tak by użytkownik wybrał czy chce usunąć czy dodać komentarz do bazy.
I teraz zastanawiam się jak to zakodować, by "po wybraniu przeze mnie jakiejś liczny np. 4 komentarzy (poprzez zaznaczenie obok nich "ptaszka" w checkboxie) by dokładnie te komentarze zostały usunięte z bazy. Stanęło na tym, że nie wiem jak zakodować takiego IFa, czyli: JEŚLI zaznaczyłeś komentarze i wybrałeś z listy rozwijalnej "usun" to USUŃ dokładnie te zaznaczone komentarze. Prośba o pomoc w tej zagwozdce Ten post edytował lamcpp 22.10.2012, 21:17:03 |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 763 Pomógł: 117 Dołączył: 15.03.2010 Skąd: void Ostrzeżenie: (0%) ![]() ![]() |
Generując formularz przypisujesz im ID to samo co w bazie, przy usuwaniu zbierasz te ID i usuwasz każdy po kolei.
Podstawy PHP znasz? -------------------- Pomogłem? Kliknij `Pomógł`. To nic nie kosztuje, a mnie usatysfakcjonuje! ;)
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 933 Pomógł: 460 Dołączył: 2.04.2010 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Checkboxy oprócz value muszą mieć jeszcze name. Ale to strzał w dziesiątkę by value zwracało id komentarza.
Co robisz dalej? Wczytujesz w pętli wartości id, które zostały przesłane z formularza oraz w zależności od wyboru generujesz zapytanie:
To tak schematycznie i w uproszczeniu. Każdy obrót pętli to nowe zapytanie. A możesz też wygenerować jedno długie zapytanie, np z IN i wykonać je już po pętli. -------------------- Jeśli pomogłem, kliknij proszę 'pomógł'. Dzięki.
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 763 Pomógł: 117 Dołączył: 15.03.2010 Skąd: void Ostrzeżenie: (0%) ![]() ![]() |
Wszystko ok, ale zapytanie może wykonać po prostu używając ... WHERE `id` = 'coś' OR `id` = 'coś' OR `id` = 'coś' ... także robienie kilku zapytań jest zbędne
![]() Ten post edytował modern-web 22.10.2012, 22:12:34 -------------------- Pomogłem? Kliknij `Pomógł`. To nic nie kosztuje, a mnie usatysfakcjonuje! ;)
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 1 933 Pomógł: 460 Dołączył: 2.04.2010 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Wszystko ok, ale zapytanie może wykonać po prostu używając ... WHERE `id` = 'coś' AND `id` = 'coś' AND `id` = 'coś' ... także robienie kilku zapytań jest zbędne ![]() Że zacytuję sam siebie: Cytat To tak schematycznie i w uproszczeniu. Każdy obrót pętli to nowe zapytanie. A możesz też wygenerować jedno długie zapytanie, np z IN i wykonać je już po pętli. Jeśli jest to UPDATE czy DELETE to tak, ale jeśli już INSERT to nie zrobi tego w ten sposób. Albo pojedynczo, albo się bawić w zapytanie w rodzaju INSERT INTO VALUES (val1,val1,val1...), (val2,val2,val2...). Także to już kwestia wyboru i rodzaju zapytania. Przedstawiłem rozwiązanie najprostsze i nieco schematyczne, dla rozważenia dla autora. -------------------- Jeśli pomogłem, kliknij proszę 'pomógł'. Dzięki.
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 264 Pomógł: 54 Dołączył: 31.08.2007 Skąd: Tychy Ostrzeżenie: (0%) ![]() ![]() |
Można jeszcze użyć formuły
Kod WHERE id IN (1,2,3,4) Gdzie cyfry to ID komentarzy. Dzięki czemu wystarczy zrobić implode tablicy po przecinku i wstawić string w nawiasy do jednego zapytania. Ten post edytował Greg0 22.10.2012, 21:52:28 |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 2 707 Pomógł: 290 Dołączył: 16.12.2008 Skąd: Śląsk Ostrzeżenie: (0%) ![]() ![]() |
Wszystko ok, ale zapytanie może wykonać po prostu używając ... WHERE `id` = 'coś' AND `id` = 'coś' AND `id` = 'coś' ... także robienie kilku zapytań jest zbędne ![]() Jak już to OR ![]() -------------------- |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 763 Pomógł: 117 Dołączył: 15.03.2010 Skąd: void Ostrzeżenie: (0%) ![]() ![]() |
Faktycznie, mój błąd. Rozgarnięcie dziś sięga zenitu!
![]() Poprawiłem, a przykład podałem jako banał bo taki najłatwiej będzie mu pojąć. Pozdrawiam. -------------------- Pomogłem? Kliknij `Pomógł`. To nic nie kosztuje, a mnie usatysfakcjonuje! ;)
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 09:16 |