![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 22 Pomógł: 0 Dołączył: 14.04.2007 Ostrzeżenie: (0%) ![]() ![]() |
Chce moc usuwac rekordy z tabeli...
Wiec wymyslilem tak, ze jakby przedstawic zawartosc tabeli w postaci listy z radiobuttonami to mozna by bylo wybrac jeden z rekordow i potem juz bez problemu go usunac... nie wiem jednak jak wylistowac ta tabele z radiobuttonami... Moze ktos pomoze? |
|
|
![]() |
![]()
Post
#2
|
|
Admin Techniczny Grupa: Administratorzy Postów: 2 071 Pomógł: 93 Dołączył: 5.07.2005 Skąd: Olsztyn ![]() |
jakiej tabeli? mysql? to przecież odpowiednie zapytanie potem mysql_fetch_ np array i potem forem lub while listujesz...
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 076 Pomógł: 62 Dołączył: 6.03.2005 Skąd: Wroc Ostrzeżenie: (0%) ![]() ![]() |
No do takiej operacji to chyba lepszy checkbox - można zaznaczać i odznaczać i kilka na raz...
Nazwij je jako array (np c[1], c[2], c[3]) a value daj odpowiadające im unikatowe id z tabeli bazy danych (w następnym kroku wiesz o jakie wiersze chodzi do usunięcia). |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 22 Pomógł: 0 Dołączył: 14.04.2007 Ostrzeżenie: (0%) ![]() ![]() |
poki co udaje mi sie listowac ta czesc rekordu, ktora chce..
w tym skrypcie probuje usuwac rekord za pomoza okienka tekstowego ale niestety nie usuwa i wyskakuje blad: 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 '' at line 1
Ten post edytował jewel 27.05.2007, 11:10:44 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 1 076 Pomógł: 62 Dołączył: 6.03.2005 Skąd: Wroc Ostrzeżenie: (0%) ![]() ![]() |
Czy w tabeli ankieterzy masz tylko nazwiska ? A co jak dwóch ankieterów będzie miało to samo nazwisko ? Wprowadź niepowtarzalny klucz główny do tabeli (na razie nazwijmy to id).
Ten post edytował Darti 27.05.2007, 11:10:07 |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 22 Pomógł: 0 Dołączył: 14.04.2007 Ostrzeżenie: (0%) ![]() ![]() |
w tej tabeli sa takze inne pozycje niz nazwiska, chce jednak usuwac po nazwiskach....
kwestia jest taka, ze gdy mam zamiast kodu: $zapyt = "DELETE FROM `ankieterzy` WHERE `nazwisko`= $usun"; kod: $zapyt = "DELETE FROM `ankieterzy` WHERE `nazwisko` = 'Kowalski'"; to usuwa mi ten rekord.... jednak jak zrobic zeby usuwalo nie tylko ten jeden konkretny, ale zczytany z pola tekstowego, ktory jest u mnie oznaczony jako usun? |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 1 076 Pomógł: 62 Dołączył: 6.03.2005 Skąd: Wroc Ostrzeżenie: (0%) ![]() ![]() |
No właśnie PO TO jest pole unikatowe w bazie danych żeby jednoznacznie określić o który wpis Ci chodzi ... Bo niby skąd baza ma wiedzieć że chodzi Ci o Kowalskiego Mariana a nie Kowalskiego Romka ?
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 1 033 Pomógł: 125 Dołączył: 17.09.2005 Skąd: Żywiec Ostrzeżenie: (0%) ![]() ![]() |
Kod $zapyt = "DELETE FROM `ankieterzy` WHERE `nazwisko` = $usun" $zapyt = "DELETE FROM `ankieterzy` WHERE `nazwisko` = 'Kowalski'" Pytanie pierwsze: Jeśli zmienna $usun będzie miała wartość Kowalski, to czym te dwa zapytania będą się od siebie różniły. PS. Kod:
zabezpiecza cię zarówno przed atakami SQL injection, jak i przed wyłączonym register globals. Nie wiem czemu w twoim kodzie jego odpowiednik jest wykomentowany :/ Ten post edytował Kicok 27.05.2007, 15:44:08 |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 22 Pomógł: 0 Dołączył: 14.04.2007 Ostrzeżenie: (0%) ![]() ![]() |
no wlasnie teoretycznie niczym.. ale w praktyce niestety nie dziala... i nie wiem dlaczego
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 1 076 Pomógł: 62 Dołączył: 6.03.2005 Skąd: Wroc Ostrzeżenie: (0%) ![]() ![]() |
to usuwa mi ten rekord.... jednak jak zrobic zeby usuwalo nie tylko ten jeden konkretny, ale zczytany z pola tekstowego, ktory jest u mnie oznaczony jako usun? Cytat no wlasnie teoretycznie niczym.. ale w praktyce niestety nie dziala... i nie wiem dlaczego Przecież napisałeś że działa ... zdecyduj się. @Kicok ma racje, niepotrzebnie zakomentowałeś linię z AddSlashes , ale to i tak nie jest istotne skoro kod Ci nie działa jak powinien. A poza tym napisałem Ci jak można to zrobić i dlaczego nie robi się tego po nazwisku (poza tym po nazwisku czy po id - z wierzchu i tak nie widać różnicy) |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 1 033 Pomógł: 125 Dołączył: 17.09.2005 Skąd: Żywiec Ostrzeżenie: (0%) ![]() ![]() |
Cytat no wlasnie teoretycznie niczym.. ale w praktyce niestety nie dziala... i nie wiem dlaczego Jakbyś wykasował $usun i wpisał tam Kowalski to zauważyłbyś, że jednak się czymś różnią. Apostrofami. A co do tych id i nazwisk, to @Darti ma rację. Radziłbym już teraz to przebudować, bo potem, gdy skrypt się rozrośnie, a ty nie będziesz już pamiętał co gdzie jest, to mogą być kłopoty. Ten post edytował Kicok 27.05.2007, 20:18:29 |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 22 Pomógł: 0 Dołączył: 14.04.2007 Ostrzeżenie: (0%) ![]() ![]() |
ok, problem rozwiazany.... zamiast:
mam:
i wszystko dziala (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) pojawil sie kolejny problem... chce aby zawartosc wybranego przeze mnie rekordu pojawiala sie w rozwijalnej liscie. Na razie listuje tylko te zawartosc i nie wiem jak to wrzucic do takiej listy, nie wiem, jak uzyc tu formularza html
|
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 1 076 Pomógł: 62 Dołączył: 6.03.2005 Skąd: Wroc Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 22 Pomógł: 0 Dołączył: 14.04.2007 Ostrzeżenie: (0%) ![]() ![]() |
poprzedni problem zostal rozwiazany... jednak jest nastepny
Generalnie chodzi o to, ze mam powiazne ze soba 2 tabele: 'ankieta' i 'pytania'. Polaczone sa tak, ze w tabeli 'pytania' mam rekord 'id_ank', ktory jest polaczony za pomoca foreign key z rekordem 'id_ankiety' z tabeli ankieta. Chce moc dodawac pytania do konkretnych ankiet (tak zeby kazde pytanie w ankiecie mozna bylo zidentyfikowac po 'id_ank' do ktorej ankiety nalezy, zeby ewentualnie pozniej moze wypelnic taka ankiete) W zwiazku z tym listuje sobie dostepne ankiety, wybieram np. 'zainteresowania' i nie wiem w tym momencie, jak zidentyfikowac, ze akuat wybralam ankiete 'zainteresowania' i ze ona ma akurat jakies tam id. Czy ktos wie, jak to moznaby zrobic? |
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 1 076 Pomógł: 62 Dołączył: 6.03.2005 Skąd: Wroc Ostrzeżenie: (0%) ![]() ![]() |
Listujesz sobie zapewne czymś w tym stylu:
potem kod w stylu:
i robisz sobie plik edytuj_ankiete.php, w którym umieszczasz kod:
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 25.08.2025 - 08:46 |