Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Bardziej zaawansowany formularz
Forum PHP.pl > Forum > Przedszkole
light
Otóz mam pytanie dotyczące takiego zagadnienia:

Mam formularz wyswietlajacy produkty w sklepie ze sprzetem komputerowym. Chciałbym otrzymac cos takiego, że mam 2 input'y. W pierwszym miałby wybierać klasę sprzetu, np "Procesor", "Karty graficzne" etc., a w dugim po wybraniu tej klasy, bez klikania na SUBMIT w tym pierwszym, wyswietlił mi wszystkie nazwy produktów spod danej klasy. Przykład:

W 1 klient wybrał opcję Karta graficzna, wiec w drugim od razu wyswietliła mu się lista wszystkich kart graficznych , np SAPPHIRE 9600PRO pozniej jakas inna i tak dalej. Te 2 wiersze korzystają z funkcji pętli (raczej while) i opcji <SELECT>. Wiem jak uzyskac podobny efekt , ale najpierw trzebaby było wysłac pierwszy formularz okreslajacy klase sprzetu, a dopiero wtedy drugi mogłby sie przestawic. Natomiast ja chce za jednym razem i jest to dośc istotny element. Dane sa pobierane z bazy danych.
Vengeance
Musisz to rozwiązać poprzez JavaScript.

Proponuje podejrzeć sposób jak to zrobić z jakieś strony gdzie podczas rejestracji często trzeba podać województwo, a potem wg. tego wyświetlana jest lista miast.
nospor
Musi to na rusi biggrin.gif . @light mówił że nie chce klikać na submit. Nikt nie każe.
W selectie daj onchange="submit();". Formularz się wyśle gdy zostanie wybrana jakaś opcja.
JS ma to do siebie, że można go wyłączyć
light
K, dziękuje za pomoc winksmiley.jpg ~exclamation.gif
bieniek
@nospor twoje rozwiązanie jest spoko, ale i tak wysyłasz formularz co skutkuje przeładowaniem stronki. Light jeżeli nie masz jakiego urazu do JavaScript proponuje rozwiązanie oparte na przykłąd na QuickForm z PEAR element hierselect.
kregor
Zawsze można pobawić się AJAX'em ... fajna zabawka i w dodatku uzyteczna.
light
W zasadzie to chodzi mi o sam efekt na stronie. JavaScript ? Bardzo rzadko korzystam , jesli nie uzyc słowa "wogóle". Ale wypróbuje i sprawdze obie koncepcje. worriedsmiley.gif
raqqos
A ja w związku z tym mam pytanko. Czy istnieje możliwość aby ten sam formularz przy 3cim kroku zapisywał pobrane dane do bazy? U mnie ma być tak: 1)Wyświetla formularz z selectem i wpisanymi do niego danymi użytkownika z $_GET; 2)Wykorzystam tą rade z onchange="submit();" i pobiore dane dotyczące użytkownika (jak rozumiem formularz wysyla sie sam do siebie, a poprzednie dane idą do pól HIDDEN) aby wyświetlić zapytanie z kilku tabel o wszystkich danych konkretnego ludka; 3)Chciałbym aby po kliknieciu na przycisk kilka z tych danych zapisało się do bazy. Muszę chyba jako przycisku użyć pola BUTTON bo przecież submit już był. Jak zaprogramować taki przycisk??
nospor
Dajesz normalny przycisk submit, czyli:
  1. <input type="submit" name="save" value="zapisz" />

a sprawdzasz czy był wciśnięty:
  1. <?php
  2.  
  3. if (isset($_POST['save']))
  4. {
  5. //a tu se zapisujesz
  6. }
  7.  
  8. ?>
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.