Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Przekazywanie zmiennej JS-->PHP
Forum PHP.pl > Forum > PHP
buker
Witam zmagam sie z kolejnym problemem. Wkleje caly kod zeby latwiej bylo mi pomoc

  1. <script language="javascript">
  2. function test1(form)
  3. {
  4. var ro = document.getElementById('rodzina').selectedIndex;
  5. document.forms['ID_rodzina'].wartosc.value = ro;
  6. }


  1. <form method="POST" action="PtasznikDodaj.php">
  2. <select id="rodzina" name="rodzina" onchange="test1(this.form)" >
  3. <?php
  4.  
  5. require('config.php');
  6. $sql="SELECT nazwa From rodzina ORDER BY nazwa";
  7. $wynik=mysql_query($sql);
  8. echo "<option value='wybierz wartosc'>Wybierz wartosc</option>";
  9. while($array = mysql_fetch_array($wynik))
  10. {
  11. echo "<option value=\"{$array['nazwa']}\">{$array['nazwa']}</option>";
  12.  
  13. }
  14. ?>
  15. </select>
  16. </form>



Chodzi o to ze potrzebuje zmiennej JS "ro" zeby 2-gi <select> był zależny od pierwszego(rodzina). Coś ala wybieram markę samochodu a później mam do wyboru model.
Po prostu przekazać umiem ale muszę wykorzystać do tego ukryty formularz i nacisnąć submit. Działa to tylko z przeładowaniem strony. A ja potrzebuje bez. Słyszałem ze jakoś za pomocą <ifram> można to zrobić tylko nie mam pojęcia jak.

Proszę o pomoc i z góry dziękuje
Crozin
Słowo klucz: AJAX.
buker
Nie wiem z czym to się je i jak się z tego korzysta. Znalazłem ze dzięki HttpRequest w ajaxie można przesłać zmienna ale nie mogę znaleźć przykładu. Jak by można prosić o jakiś przykład wykorzystania tego
bim2
Nie musi to też być Ajax, choć dla użytkownika będzie on świetnym ułatwieniem. Podejdź do sprawy tak, że użytkownik wybiera wpierw 1 selecta, następnie przeglądarka przesyłą post do ciebie (z id wybranego selecta) i dopiero wyświetlasz ten drugi select. Czyli kiedy user coś wybierze (onselect) to wykonujesz formularz. Z ajaxem chodzi o to że przy onselect wysyłasz tak jakby w tle zmienną do php, on zwraca ci listę kategorii np w json (format zapisu danych) i wrzucasz je do selecta poprzez javascript. Jak się postarasz to sobie poradzisz.
Crozin
Nie można przesłać zmiennej. Można wykonać całe żądanie HTTP (tak jakbyś w nowej karcie przeglądarki wszedł na stronę), a to żądanie zaś może w URL-u albo korzystając z metody POST w zmiennych żądania przesłać tą zmienną, a w odpowiedzi (tu PHP może na podstawie tej zmiennej wygenerować odpowiedź) uzyskać listę do wstawienia w SELECT.

Przykładów wykorzystania XHR jest cała masa.
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.