Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> apel o przykład formularza
jarod20
post
Post #1





Grupa: Zarejestrowani
Postów: 31
Pomógł: 0
Dołączył: 14.01.2004
Skąd: Mragowo

Ostrzeżenie: (0%)
-----


Witam,
Mam prośbę do bardziej zaawansowanych kolegów.

Czy byłby ktoś tak dobry i prawy i pokazał mi/nam, wszystkim początkującym i potrzebującym, prosty przykład formularza, zawierającego pola typu radiobutton i checkbox, z danymi(na przykład tekstami przy buttonach) pobieranymi z bazy danych, z zapisem wybranych danych do bazy, i z taką opcją, że gdy nie wybierze się wszystkich pól formularza, a naciśnie przycisk wyślij, to formularz pokarze się jeszcze raz, ale z zaznaczonymi już polami, wcześniej wypełnionymi, i z wyszczególnionymi polami, w których brakowało zaznaczenia.

Taki temat poriuszany był an forum setki razy, ale nie wydaje mi się, by ktoś raz na zawsze go zakończył. W wielu postach można znaleźć zapytania o formularze, ale gdy osoba, która zadawała pytanie, uzyska na nie odpowiedź, temat się urywa.
A może gdzieś w sieci można znaleźć artykuł/tutorial/przykład obrazujący dokładnie (najlepiej z opisem) sposób wykonania takiego formularza.
Robiąc coś, chciałbym to rozumieć, a nie bez sensu przepisywać gotowe skrypty.

Z góry dziękuję w imieniu swoim i wszystkich potrzebujących smile.gif
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
hawk
post
Post #2





Grupa: Zarejestrowani
Postów: 521
Pomógł: 0
Dołączył: 3.11.2003
Skąd: 3city

Ostrzeżenie: (0%)
-----


Jasne. Podam ci nawet 2 przykłady: WACT i Prado.

Niestety, pewnie nie spełnią twoich oczekiwań, bo z jednej strony nie znajdziesz wszystkiego czego szukasz, a z drugiej strony będą to przykłady bardzo powiązane z całym frameworkiem.

I tutaj jest pies pogrzebany - można znaleźć przykłady rozwiązań, ale i tak sprowadzi się to do przepisywania kodu. Zbyt obszerny temat. Dostajesz duży framework który ma w temacie zarządzanie formularzami, i używasz go lub nie.

Chociaż dla jednego takiego formularza można się obejść bez rozwiązania systemowego i wyklepać rozwiązanie.
Go to the top of the page
+Quote Post
Puciek
post
Post #3


TAO programowania


Grupa: Zarejestrowani
Postów: 340
Pomógł: 3
Dołączył: 25.03.2003
Skąd: ze słoika

Ostrzeżenie: (30%)
XX---


Jezu tu niemaiwelkich mecyi ^^, ja dotego doszedlem po rpobach i bledach +_=
Kod
<from method=post action=index.php>
<input type=checkbox name=cbox value=1>Input pierwszy
<input type=checkbox name=cbox value=2>Input drugi
<input type=checkbox name=cbox value=3>Input trzeci
<input type=checkbox name=cbox value=4>Input czwarty
<input type=submit value='GOŁ'></form>

  1. <?php
  2. echo( $_POST['cbox'] );
  3. ?>

Ale teraz ludziom juz probowac sie niechce =_+


--------------------

http://puciek.wordpress.com prywatnie o świecie
Go to the top of the page
+Quote Post
Vertical
post
Post #4





Grupa: Zarejestrowani
Postów: 848
Pomógł: 0
Dołączył: 7.07.2004
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Na początku trzeba określić plik docelowy (ten, do którego będą przesyłane dane) formularza za pomocą atrybutu action oraz metodę przesyłania danych formularza za pomocą atrybutu method:
- metoda POST = dane przesyłane anonimowo
- metoda GET = dane przesyłane za pomocą adresu strony
przy odczytywaniu danych w pliku *.php ważna jest metoda przesyłania, ponieważ używamy tablicy $_POST jeśli metoda="POST" lub $_GET jeśli metoda="GET"
...zatem zaczynamy:
----------------------
Zawartość pliku index.html:
  1. <form action = "index2.php" method = "POST">
  2. Imie*: <input type = "radiobutton" name = "imie">
  3. <br>Nazwisko*: <input type = "text" name = "nazwisko">
  4. <br><input type = "checkbox" name = "checkbox1">lubi jablka
  5. <br><input type = "checkbox" name = "checkbox2">lubi czeresnie
  6. <br>Miasto:<select name = "select"><option value = "do500000">do 500 000 mieszkancow</option><option value = "powyzej500000">powyzej 500 000 mieszkancow</option></select>
  7. <hr>
  8. <input type = "submit" name = "submit" value = "Wyslij!">
  9. </form>

Zasada działania skryptu index.html:
1. Na początku rozpoczynamy formularz nadając atrybuty action oraz method (linia 1)
2. Następnie generujemy pola, w które użytkownik wpisuje:
-Imię (linia 2)
-Nazwisko (linia 3)
-Czy lubi jabłka smile.gif (linia 4)
-Czy lubi czereśnie smile.gif (linia 5)
-Liczbę ludności w którym mieszka (linia 6
następnie tworzymy przycisk submit ("wyślij", linia 8)
* - oznacza pola formularza, które muszą być wypełnione, czyli Imię i Nazwisko.
3. Na końcu zakańczamy formularz
--------------
Następnie tworzymy plik o nazwie index2.php, o następującej treści:
  1. <?php
  2. if( $_POST[&#092;"imie\"] == \"\")
  3. {
  4. echo(&#092;"Wypełnij pole <b>Imie</b> !n\");
  5. } elseif ( $_POST[&#092;"nazwisko\"] == \"\")
  6. {
  7. echo(&#092;"Wypełnij pole <b>Nazwisko</b>!n\");
  8. } elseif ( !eregi ( &#092;"^[a-zA-Z]+$\", $_POST[\"imie\"] )
  9. {
  10. echo(&#092;"Imię musi zawierać <b>tylko</b> litery!n\");
  11. } elseif ( !eregi ( &#092;"^[a-zA-Z]+$\", $_POST[\"nazwisko\"] )
  12. {
  13. echo(&#092;"Nazwisko musi zawierać <b>tylko</b> litery!n\");
  14. } else {
  15. echo(&#092;"Oto informacje które nam podałeś:
  16. <br>Imie: <b>$_POST['imie']</b>,
  17. <br>Nazwisko: <b>$_POST['nazwisko']</b>,n&#092;");
  18. if ( $_POST[&#092;"checkbox1\"] == \"on\")
  19. {
  20. echo(&#092;"<br>Lubisz: <b>Jablka</b>n\");
  21. } elseif ( $_POST[&#092;"checkbox2\"] == \"on\")
  22. {
  23. echo(&#092;"<br>Lubisz: <b>Czeresnie</b>n\");
  24. }
  25. echo(&#092;"<br>Mieszkasz w mieście <b>$_POST['select']</b>n\");
  26. }
  27. ?>

Zasada działania skryptu index2.php:
1. W liniach 2 - 7 skrypt sprawdza, czy pola imię i nazwisko zostały wypełnione.
2. W liniach 8 - 13 skrypt sprawdza, czy pola imię i nazwisko składają się wyłącznie z liter
3. W linii 15 rozpoczyna się wyświetlanie danych podanych przez użytkownika
4. Od linii 18 do linii 24 skrypt sprawdza co lubi użytkownik (czereśnie czy jabłka)
5. W linii 25 napisana jest ludność miasta, w którym mieszka użytkownik
6. W linii 26 zamykamy warunek

PS. Nie mówcie mi, że się rozpisałem smile.gif
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 04:37