Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] dwa formularze w jednym
Forum PHP.pl > Forum > Przedszkole
kflorcz
angrysmiley.gif jak można zrobić formularz w którym byłby przycisk po naciśnięciu którego ładowana byłaby lista select z mysql i drugi przycisk który by pobrane dane oraz wpisane w formularzu przesłał do tabeli w bazie
  1. <?php
  2. echo"<font face='arial' color='black' size='3'>";
  3. echo"<form action='index.php?Menu=3' method='post'>";
  4. echo"Wybierz producenta kasy:<br>";
  5. echo"<select name='NazwaProd' size='1'>";
  6. echo"<option value=''>Wybierz Producenta ...</option>";
  7. while ($wiersz = mysql_fetch_row($wys_prod))
  8. {
  9. $proba=$wiersz[1];
  10. echo"<option value='$wiersz[0]'>$wiersz[1]</option>";
  11. }
  12. echo"</select>";
  13. echo"<input type='submit' value='Pokaż model'>";
  14. echo"</form>";
  15. echo"</font>";
  16. $nazwa=$_POST['NazwaProd'];
  17. echo"$nazwa";
  18. if ($nazwa<>0)
  19. {
  20. /*******************Zapytanie o Modele producenta*********************/
  21. $mod = "SELECT * FROM T_Model where IdProducenta='$nazwa' ";
  22. $wys_mod = mysql_query ($mod) or die ("Zapytanie zakończone niepowodzeniem");
  23.  
  24. echo"<font face='arial' color='black' size='3'>";
  25. // echo"<form action='index.php?Menu=3' method='post'>";
  26. echo"Wybierz producenta kasy:<br>";
  27. echo"<select name='NazwaModel' size='1'>";
  28. echo"<option value=''>Wybierz Model ...</option>";
  29. while ($wiersz1 = mysql_fetch_row($wys_mod))
  30. {
  31. echo"<option value='$wiersz1[0]'>$wiersz1[2]</option>";
  32. }
  33. echo"</select>";
  34. echo" <br>Numer Fabryczny:<br>";
  35. echo" <input name='Nr_Fabr' size='20' value=''>";
  36. echo" <br>Numer Unkiatowy<br>";
  37. echo" <input name='Nr_Unikat' size='20'>";
  38. echo" <br>Cena Zakupu:<br>";
  39. echo" <input name='C_Zakup' size='10'value='$wiersz[1]'>";
  40. echo" <br>Cena Sprzedaży:<br>";
  41. echo" <input name='C_Sprzed' size='10'>";
  42. echo"<input type='submit' value='Pokaż dane'>";
  43. echo"</form>";
  44. echo"</font>";
  45. ?>

Ktoś ma może jakieś pomysły?
mokry
Proponowałbym wykorzystać AJAX, jeśli nie chcesz w tym momencie przeładowywać strony.
kflorcz
Może być z przeładowaniem strony. Chodzi mi tylko jak zrobić jeden formularz w drugim
mokry
---WERSJA Z ODŚWIEŻANIEM---

Tworzysz najpierw jeden formularz w którym pobierasz sobie marki/producentów. Jako value podajesz np id pozycji z tabeli...

Tworzysz warunek: Jeśli formularz1 został wysłany -> pokaz formularz2 z modelami produktu.

No a potem wg dalszego widzimisie....
Ja na Twoim miejscu nie używał buttona submit w pierwszym formularzu, tylko uzyl JS, który bezposrednio po wybraniu pozycji z listy select, wysylal zapytanie....

---WERSJA BEZ ODŚWIEŻANIA---
Zasada działania jest prawie identyczna jak w sytuacji powyżej z tym, że zamiast przechodzić do innej strony/przeładowywać, za pomocą AJAX'a aktualizujesz sobie layer'a poniżej select1...

Mam nadzieje, że rozumiesz o co mi chodzi...
Pozdrawiam.
kflorcz
To co napisałeś jest dla mnie zrozumiałe. Tylko php uczę się od jakiegoś tygodnia, a co tu dopiero mówić o JS czy AJAXie. Wiem że php jest trochę "martwy" ale narazie nie wchodzę w JS czy AJAX.
Dzięki za pomoc
mokry
No to tak...

Masz sobie kod z formularzem1... j
Zaraz poniżej tego formularza wrzucasz sobie warunek, że jeżeli zmienna $_POST['marka'] istnieje to ma wyświetlić drugi formularz z odpowiednimi danymi pobranymi z MySQL.
Rozumiesz? Jak masz problemy to zgłoś się na PW.
kflorcz
To oczywiście ze rozumię. Temat można zamknąć
Dzięki za pomoc
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.