Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [HTML][PHP]Przekazywanie zmiennych pomiędzy kilkoma stronami
kyez
post 29.01.2013, 17:21:51
Post #1





Grupa: Zarejestrowani
Postów: 48
Pomógł: 0
Dołączył: 6.09.2011

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


Witajcie.

Domyślam się, że taki temat padł pewnie wielkokrotnie ale ani google ani wasza forumowa opcja "szukaj" nie znalazła niczego co było by mi pomocne więc piszę temat.

Do rzeczy. Mam plik a.php, w którym jest formularz i można tam wprowadzić do pola tekstowego(name='zmienna') wartość. Po przesłaniu formularza zmienna $_POST['zmienna'] przypisywana jest do zmiennej $zm.

Teraz: potrzebuję tą zmienną $zm (która zawiera wartość pola tekstowego z pliku a.php) przekazać do pliku c.php. Metoda GET odpada.
Jak mogę to rozwiązać zyskując równie bezpieczeństwo. ?
Go to the top of the page
+Quote Post
markonix
post 29.01.2013, 17:24:19
Post #2





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

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


Cytat
php przekazywanie zmiennych

Pierwszy wynik i masz kilka rozwiązań z tego sesje są najbezpieczniejsze.


--------------------
Go to the top of the page
+Quote Post
kyez
post 29.01.2013, 17:34:24
Post #3





Grupa: Zarejestrowani
Postów: 48
Pomógł: 0
Dołączył: 6.09.2011

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


Z tego nie bardzo rozumiem jak mam przekazać wartości zmiennych do tablicy sesyjnej i poźniej je odczytać na stronie c.php.
Go to the top of the page
+Quote Post
markonix
post 29.01.2013, 17:38:05
Post #4





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

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


Może tak podstawy?

http://pl.wikibooks.org/wiki/PHP/Sesje


--------------------
Go to the top of the page
+Quote Post
kyez
post 29.01.2013, 17:57:39
Post #5





Grupa: Zarejestrowani
Postów: 48
Pomógł: 0
Dołączył: 6.09.2011

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


Chyba jestem ciężko kumaty..

a.php:

  1. <html>
  2. <head>
  3. <title>a</title>
  4. </head>
  5. <body>
  6. <form action="b.php" method="post">
  7. <input type="text" name="zmienna"/>
  8. <input type="submit" value="send"/>
  9. </form>
  10. </body>
  11. </html>


b.php:

  1. <html>
  2. <head>
  3. <title>b</title>
  4. </head>
  5. <body>
  6. <?php
  7.  
  8.  
  9. $zm = $_POST['zmienna'];
  10.  
  11. $_SESSION['kod'] = $zm;
  12. ?>
  13.  
  14. aha więc zmienna to: <?php echo $zm;?>
  15.  
  16.  
  17.  
  18. <form action="c.php" method="post">
  19.  
  20. <input type="submit" value="przeslij dalej"/>
  21. </form>
  22.  
  23.  
  24.  
  25. </body>
  26. </html>



c.php:

  1. <html>
  2. <head>
  3. <title>a</title>
  4. </head>
  5. <body>
  6. <?php
  7. $wynik = $_SESSION['kod']
  8. echo $wynik;
  9. ?>
  10.  
  11.  
  12.  
  13. </body>
  14. </html>


I nie działa. To chyba nie jest takie proste jak myślałem.
Go to the top of the page
+Quote Post
teez
post 29.01.2013, 18:09:18
Post #6





Grupa: Zarejestrowani
Postów: 186
Pomógł: 6
Dołączył: 20.12.2010

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


Nie masz nigdzie zarejestrowanej sesji. Lepszym wyjściem byłby insert do bazy danych, a później odczyt ( np. ostatniego rekordu ).

Ale jak nie to, zarejestruj sesję session_register
Go to the top of the page
+Quote Post
kyez
post 29.01.2013, 18:12:05
Post #7





Grupa: Zarejestrowani
Postów: 48
Pomógł: 0
Dołączył: 6.09.2011

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


  1. <?php
  2.  
  3. $zm = $_POST['zmienna'];
  4.  
  5.  
  6.  
  7. ?>

I error:

  1. Fatal error: Call to undefined function session_register() in C:\Program Files\EasyPHP-12.1\www\my portable files\b.php on line 11
Go to the top of the page
+Quote Post
kristaps
post 29.01.2013, 18:27:00
Post #8





Grupa: Zarejestrowani
Postów: 279
Pomógł: 36
Dołączył: 1.03.2012

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


Ten 30sekundowy kurs wystarczy byś rozwiązał swój problem.

Rozpocznij sesję a.php, odbierz b.php, a później już masz dostęp gdzie potrzebujesz.
Go to the top of the page
+Quote Post
kris12b
post 29.01.2013, 18:34:57
Post #9





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 11.08.2012

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


tego już się nie używa.
Go to the top of the page
+Quote Post
kyez
post 29.01.2013, 21:12:47
Post #10





Grupa: Zarejestrowani
Postów: 48
Pomógł: 0
Dołączył: 6.09.2011

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


Ależ ja truję dupe..

b.php

  1. <?php
  2. $zm = $_POST['zmienna'];
  3.  
  4.  
  5. $_SESSION['kod'] = $zm;
  6.  
  7.  
  8. ?>
  9.  
  10. aha więc zmienna to: <?php echo $zm;?>
  11.  
  12.  
  13.  
  14. <form action="c.php" method="post">
  15.  
  16. <input type="submit" value="przeslij dalej"/>
  17. </form>
  18.  



c.php
  1. <?php
  2. $wynik = $_SESSION['kod'];
  3. echo $wynik;
  4. ?>
  5.  
  6.  


error:

  1. Notice: Undefined variable: _SESSION in C:\Program Files\EasyPHP-12.1\www\my portable files\c.php on line 7


Ten post edytował kyez 29.01.2013, 21:13:47
Go to the top of the page
+Quote Post
teez
post 29.01.2013, 21:19:50
Post #11





Grupa: Zarejestrowani
Postów: 186
Pomógł: 6
Dołączył: 20.12.2010

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


Notice to nie error. wink.gif
Go to the top of the page
+Quote Post
kyez
post 30.01.2013, 14:55:05
Post #12





Grupa: Zarejestrowani
Postów: 48
Pomógł: 0
Dołączył: 6.09.2011

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


Czy pomoże mi ktoś ? To naprawdę dla mnie ważne. Próbowałem tak, ale cały czas to samo.

b.php:

  1. <?php
  2. $zm = $_POST['zmienna'];
  3.  
  4.  
  5.  
  6. if(!isset($_SESSION['kod'])) // 2
  7. {
  8. $_SESSION['kod'] = 0;
  9. }
  10.  
  11. $_SESSION['kod']=$zm; // 3
  12.  
  13.  
  14.  
  15. ?>
Go to the top of the page
+Quote Post
Sephirus
post 30.01.2013, 16:27:14
Post #13





Grupa: Zarejestrowani
Postów: 1 527
Pomógł: 438
Dołączył: 28.06.2011
Skąd: Warszawa

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


Daj session_start() także na początku c.php i powinno być ok (jeśli dobrze śledziłem wątek)

OT: Ja tu w ogóle widzę jakieś zueeeeee podejście do tematu... plik b.php i c.php... czemu nie można wszystkiego załatwić jednym skryptem jeśli b i c są na jednym serwerze (tak mniemam)?

Ten post edytował Sephirus 30.01.2013, 16:28:43


--------------------
If you're good at something, never do it for free.
Potrzebujesz skryptu JS lub PHP - szukasz kogoś kto przetestuje twoją aplikację pod względem bezpieczeństwa? Szybko i solidnie? Napisz ;)
Mój blog - Jak zwiększyć wydajność front-endu - O buforowaniu wyjścia w PHP słów kilka...
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 Wersja Lo-Fi Aktualny czas: 6.05.2025 - 07:13