Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Formularz (problem z przekazaniem zmiennych)
Forum PHP.pl > Forum > PHP
Fixer
Witam
Już mówię w czym mam problem...

Otóż mój formularz składa się z 3 plików

1. index.php
2. sprawdz.php
3. wyslij.php

w 1-szym pliku jest kod html formularza + walidacja wpisanych danych w JS.
2-gi plik zaś ma wyświetlić przekazane dane w celu weryfikacji ich przez użytkownika + ich ewentualne wydrukowanie.
3-ci plik przetwarza cały formularz wysyłając go na podany w formularzu mail + załącznik w postaci grafiki.

I sprawa wygląda tak:
Jak uzyję kombinacji pliku 1-go i 2-go to przekazywanie zmiennych odbywa się bezproblemowo a mail trafia tam gdzie trzeba biggrin.gif

Jednak w momencie gdy dodałem kolejny plik 2-gi, który ma tylko przyjąc dane z formularza i wyświetlić je to plik 3-ci który ma wysłać moje dane (zmienne) gdzieś się gubią i nie wysyła ich, na maila leci sama forma jedynie blink.gif

Problem tkwi w odebraniu danych przez plik 3-ci od pliku 2-ego.

Zmienne przekazuję w następujący sposób:
1) <input name="imie" type="text" id="imie" size="25"> (mój input)
<form name="formularz" action="sprawdz.php" method="post" ENCTYPE="multipart/form-data"> (akcja z formy)
2) <? echo htmlspecialchars($imie, ENT_QUOTES); ?> (wyswietl dane z inputa)
3) <B>". $_POST['imie'] ."</B> (odebranie zmiennej z pliku 2-giego i wysłanie jej)

Prawdopodobnie źle odbieram te dane do wysłania, plis powiedzcie mi jak mam te zmienne przetwarzać by je poprawnie wysyłał (kod jest dośc długi i rozbudowany dlatego nie zamieszczam go...)
Aha i nie mam zamiaru zapisywać tych danych z formularza tymczasowo do mysql lub do pliku!. Chciał bym też ten formularz podzielić na tzw. "Kroki" bo jest on dość długi i to nieestetycznie wygląda... poprostu będzie przycisk "Dalej" który przeniesie użytkownika do kolejnej części formularza. Narazie nie wiem jak te zmienne przekazywać więc stoję w miejscu :/

Formularz jest wysyłany metodą POST w formie HTML'a

Z góry dzięki i pozdrawiam...
marcini82
Masz wlasciwie 3 sposoby do wyboru:
1. W 2 pliku robisz formularz, w nim dajesz ukryte pola, a jako ich wartosc ustawiasz to co przyszlo z 1 pliku przez post, np.
  1. <form action="plik3.php" method="post">
  2. <input type="hidden" name="imie" value="'.$_POST['imie'].'">
  3. // tu cos wiecej
  4. <input type="submit" name="dalej" value="dalej">

W przypadku formularza skladajacego sie z kilku krokow ja bym tak wlasnie zrobil.

2. Przekazujesz zmienne w $_SESSION

3. Przy przejsciu z jednego pliku do drugiego przekazujesz zmienne przez $_GET
Fixer
ok, dzięki wielkie, użyłem pól ukrytych biggrin.gif
w przyszłości pozamieniam to na sesje prawdopodobnie
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.