![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 26 Pomógł: 0 Dołączył: 29.07.2006 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Cześć,
Mam problem z zrobieniem prawdopodobnie prostej rzeczy. [STRUKTURA TABELI MySQL] Kod mysql> describe tb_wesele; +----------------+--------------+------+-----+---------+-----------------------------+ | Field | Type | Null | Key | Default | Extra | +----------------+--------------+------+-----+---------+-----------------------------+ | LP | tinyint(3) | NO | PRI | NULL | auto_increment | | Nazwa_prezentu | varchar(200) | YES | | NULL | | | Cena_prezentu | decimal(6,2) | YES | | NULL | | | Link_do_strony | varchar(250) | YES | | NULL | | | Czy_wybrany | tinytext | YES | | NULL | | | Kiedy_wybrany | timestamp | YES | | NULL | on update CURRENT_TIMESTAMP | +----------------+--------------+------+-----+---------+-----------------------------+ [IDEA] Możliwość wyboru wiersza (checkbox) jednokrotnie lub wielokrotnie (kilka wierszy) w formularzu HTML, generowanym za pomocą PHP, wyświetlającym zawartość tabeli MySQL oraz aktualizowanie tabeli MySQL po wyborze wiersza przez użytkownika. [Od strony użytkownika] Łopatologicznie: wchodzę na stronę, wybieram interesującą mnie pozycję (lub interesujące mnie pozycje) z tabeli, zahaczam "checkbox/y", klikam "Zapisz" i koniec. [Od strony serwera] Skrypt generuje listę pozycji do formularza za pomocą PHP/MySQL. Formularz zawiera tylko te pozycje, które w polu "Czy_wybrany" zawiera słowo "NIE".
Użytkownikowi pojawia się formularz z wyselekcjonowanymi wierszami oraz dodatkową kolumną, w której wstawiam <input type="checkbox">. Po wybraniu przez użytkownika pozycji, skrypt aktualizuje tabelę 'tb_wesele' zmieniając tylko pole "Czy_wybrany" z "NIE" na "TAK" oraz aktualizuje "TIMESTAMP" w polu "Kiedy_wybrany" dla pozycji zaznaczonych przez użytkownika. Ponieważ miałem dość długą pauzę w kodowaniu, wykładam się na podstawowych rzeczach: 1. Wszystko chcę obsłużyć "jednym plikiem" - tzn. operacje SELECT, UPDATE, wyświetlanie formularze miałyby odbywać się w jednym pliku index.php. 2. Chcę użyć metody POST dla formularza. Teraz moje wypociny: Używam osobnych pliczków do nagłówka i stopki (head.php oraz foot.php). Foot.php nie będę przytaczał, bo tam nic nie ma. head.php
index.php
Nie mam jeszcze napisanej części dot. UPDATE. [CO DZIAŁA?] 1. Połączenie do bazy i pobieranie wyselekcjonowanych danych do formularza [Z CZYM SOBIE NIE RADZĘ] 1. index.php - wiersze od 7 do 97. To są skrypty z jakichś starych moich prac, które starałem się przemianować. Niestety, zamiast iść w dobrym kierunku, to brnę we mgłę. 2. index.php - wiersz 140 - nie wiem jak to zrobić, aby formularz wiedział, którą pozycję (wcześniej wczytaną skryptem) wybrał użytkownik i aby ją przesłał (zaktualizował UPDATE) w bazie MySQL. Bardzo serdecznie proszę o pomoc. Moderatorów proszę o wyrozumiałość - po dłuższej przerwie, moja znajomość obraca się wokół Przedszkola, zatem w tej sekcji postanowiłem umieścić swoje "wypociny". Z pokorą przyjmę krytykę. Dziękuję, Jarek (zoomol) Ten post edytował zoomol 8.03.2014, 10:34:59 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 26 Pomógł: 0 Dołączył: 29.07.2006 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Turson wiedziałem o pętli, tylko nie wiedziałem jak ją skonstruować... Doczytałem, poduczyłem się trochę i ostatecznie taka pętla załatwiła sprawę - dzięki!
Użyłem jej tak:
Użycie samej zmiennej $ID powodowało ostrzeżenie. Spróbowałem zatem wrzucenie tablicy przed rozdzieleniem jej funkcją implode() i to zadziałało. Ostatecznie wszystkie moje problemy zostały rozwiązane z Waszą pomocą - serdeczne dzięki. Temat można już zamknąć (IMG:style_emoticons/default/smile.gif) Ten post edytował zoomol 12.03.2014, 15:44:55 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 203 Pomógł: 55 Dołączył: 23.11.2008 Skąd: UKF Ostrzeżenie: (0%) ![]() ![]() |
Użycie samej zmiennej $ID powodowało ostrzeżenie. Spróbowałem zatem wrzucenie tablicy przed rozdzieleniem jej funkcją implode() i to zadziałało. Funkcja implode nie rozdziela tablicy tylko scala elementy w string (IMG:style_emoticons/default/smile.gif) Tak na marginesie |
|
|
![]() ![]() |
![]() |
Aktualny czas: 9.10.2025 - 23:01 |