Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Jak przetransportować zmienną dalej?
DeDmAn
post
Post #1





Grupa: Zarejestrowani
Postów: 38
Pomógł: 0
Dołączył: 12.09.2006

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


Witam

Mam taki problem:

Mam sobie switcha:

  1. <?php
  2.  
  3. switch ($_GET['pokaz'])
  4. {
  5.  
  6. case "etap3":
  7. // wyswietlenie $_post['xxx']
  8. break;
  9.  
  10.  
  11. case "etap2":
  12. // FORMULARZ Z AKCJA: etap3
  13. // przekazanie $_post['xxx'] do etapu3
  14. break;
  15.  
  16.  
  17. default:
  18. // FORMULARZ Z AKCJA: etap2
  19. // Wswietlenie formularza z $_post['xxx']
  20.  
  21. break;
  22. }
  23. ?>



Więc chciałbym tak:

W default wczytuje formularz w ktorym wpisuje sobie _POST, w kolejnym wyswietlam. I chcialbym go przekazac do kolejnego etapu. Jak mam to zrobic?
Czy tylko zostaje sesja?

Go to the top of the page
+Quote Post
trucksweb
post
Post #2





Grupa: Zarejestrowani
Postów: 1 199
Pomógł: 31
Dołączył: 22.03.2004
Skąd: Warszawa

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


jesli to bedzie tablica to tak,jedynie sesja bedzie rozwiazaniem
jeslii to tylko jedna/dwie zmienne to mozesz utworzyc hiddena i przekazywac w nim wartosci
Go to the top of the page
+Quote Post
darko
post
Post #3





Grupa: Zarejestrowani
Postów: 2 885
Pomógł: 463
Dołączył: 3.10.2009
Skąd: Wrocław

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


Jeśli chcesz przekazać zmienną w obrębie jednego skryptu z jednego bloku kodu, do innego, to sesja nie jest potrzebna, wystarczy zdefiniować zmienną np. $x = $_POST['x']; czy $_GET['x']. Tablice $_POST i $_GET mają to do siebie, że są superglobalne, więc dostęp do ich danych nie jest problematyczny i właściwie masz go w każdym miejscu skryptu, do którego zostały wysłane zmienne którąś z tych metod(POST lub GET). Jeżeli natomiast chciałbyś zrobić np. przekierowanie do innego skryptu, to użyj sesji. Możesz oczywiście zrobić przekierowanie ze zmiennymi (ale tylko jeśli wysłano metodą GET), poprostu przesyłasz odpowiednie parametry w adresie, np. window.location.href = 'jakis_inny_skrypt.php?zmienna1='.$_GET['zmienna1'].'&zmienna2='.$_GET['zmienna2'];

Ten post edytował darko 18.01.2010, 16:41:44
Go to the top of the page
+Quote Post
DeDmAn
post
Post #4





Grupa: Zarejestrowani
Postów: 38
Pomógł: 0
Dołączył: 12.09.2006

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


darko gdy robie tak jak mówisz wyskakuje mi:

Cytat
Notice: Undefined variable: kwotapozyczki in D:\_www\Kancelaria Finansowa\xxx.php on line 16


Więc chyba zostaje sesja
Go to the top of the page
+Quote Post
darko
post
Post #5





Grupa: Zarejestrowani
Postów: 2 885
Pomógł: 463
Dołączył: 3.10.2009
Skąd: Wrocław

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


Cytat(DeDmAn @ 18.01.2010, 17:25:58 ) *
darko gdy robie tak jak mówisz wyskakuje mi (...)

Pokaż, jak robisz.
Go to the top of the page
+Quote Post
lnn
post
Post #6





Grupa: Zarejestrowani
Postów: 361
Pomógł: 11
Dołączył: 17.12.2008
Skąd: LU

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


ja bym zrobil tak
  1. $_SESSION['odbieranie_danych'] = true;
  2. // odebranie danych z formularza i zapis do sesji
  3. $_SESSION['etap_1'] = serialize($_POST);
  4.  
  5. //potem odserializowanie danych
  6. $etap_1 = unserialize($_SESSION['etap_1'];
  7.  
  8. // i wywolujemy to co pobrales po nazwie
  9. echo $etap_1['nazwa_pobranego_elementu'];
  10. echo $etap_1['nazwa_pobranego_elementu2'];
  11.  
  12. //itd ..


Ten post edytował lnn 18.01.2010, 19:51:33
Go to the top of the page
+Quote Post
thek
post
Post #7





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Pewnie definiujesz tę zmienną poza zasięgiem. Poczytaj ciut o zasięgu zmiennych to zrozumiesz, że jeśli zmienna ta powinna być widoczna tam gdzie chcesz, to nie może się ona pojawiać znikąd. Zmienna zdefiniowana w obrębie funkcji warunkowej, switch i wszelkich pętlach jest widoczna tylko w nich. Po ich zakończeniu ulega zniszczeniu. By to ominąć musiz deklarować je wcześniej zmieniać wewnątrz pętli i wtedy możesz ją odczytać na innym etapie już poza strukturą kontrolną.
Go to the top of the page
+Quote Post
darko
post
Post #8





Grupa: Zarejestrowani
Postów: 2 885
Pomógł: 463
Dołączył: 3.10.2009
Skąd: Wrocław

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


~thek ma rację, jednak jak wcześniej wspomniałem są to tablice superglobalne, do których masz cały czas dostęp.
Go to the top of the page
+Quote Post
thek
post
Post #9





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Ja się odniosłem do zmiennej kwota_pozyczki wskazywanej błędem, bo jakby nie spojrzeć nie wygląda mi to na żadną daną z tablicy $_POST, $_GET, $_SESSION, $_REQUEST tylko jakąś lokalną (IMG:style_emoticons/default/smile.gif) Co prawda może gdzieś jest przypisanie, ale nadal pewnie do zmiennej lokalnej, której czas życia kończy się przed linią z błędem. Gdybyśmy wiedzieli jak wygląda kod do linii 16 włącznie to pomogło by to Nam zapewne ustalić przyczynę lepiej.
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 22.08.2025 - 18:08