![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 496 Pomógł: 2 Dołączył: 15.07.2011 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Potrzebuję utrzymać dane wysłane w formularzu metodą POST ... utrzymać tzn. coś w stylu zapisu ... jednak wolałbym nie zapisywać ani do pliku ani do bazy tych danych ... chciałbym utrzymać dane za pomocą sesji lub cookies ... próbuję za pomocą sesji i cookies ale nic z tego .. jak przełączam się na następną stronę to dana z POSTa znika przykład:
jest może jakiś ciekawy trick na trzymanie danych wysłanych przez POST ? Ten post edytował damianooo 3.11.2011, 09:43:34 |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
Wystartowałeś sesję przez session_start?
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
No ale na następnej stronie nie możesz już robić:
$_SESSION['zm_kk'] = $_POST['kk']; bo przecież $_POST['kk'] na następnej stronie już nie istnieje. Na następnej stronie dopierasz się już do sesji echo $_SESSION['zm_kk']; ps: session_start() robisz wszędzie? -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 496 Pomógł: 2 Dołączył: 15.07.2011 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
tak dokładnie ... o tym nie zapominam
![]() może coś robię nie tak .. robię to w następujący sposób : index.php
i na tych stronach naglowek, content nie robię już session_start() |
|
|
![]()
Post
#5
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Przeczytałes w ogole co ci napisalem?
Cytat No ale na następnej stronie nie możesz już robić: $_SESSION['zm_kk'] = $_POST['kk']; bo przecież $_POST['kk'] na następnej stronie już nie istnieje. Na następnej stronie dopierasz się już do sesji echo $_SESSION['zm_kk']; Poza tym, skoro operujesz już na sesji to wywal ciacha. Nie mieszaj bez potrzeby dwóch mechanizmów. I kolejne pozatym: jak się upierasz do ciach, to wiedz, ze setcookie() powoduje ze $_COOKIE zawiera ciacho dopiero przy następnym odwolaniu do strony -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 496 Pomógł: 2 Dołączył: 15.07.2011 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
tak ale chyba nie zrozumiałem tego:
Cytat Na następnej stronie dopierasz się już do sesji echo $_SESSION['zm_kk']; czyli rozumiem że mój sposób jest zły i powinienem to zrobić tak: index.php
druga_strona.php
i wtedy będę widział daną z $_SESSION['zm_kk'] na każdej stronie Ten post edytował damianooo 3.11.2011, 09:59:09 |
|
|
![]()
Post
#7
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
No to jeszcze raz:
Tam gdzie odbierasz dane z post masz mieć: $_SESSION['zm_kk'] = $_POST['kk']; I to wszystko. Tam gdzie odbierasz dane z sesji masz mieć: echo $_SESSION['zm_kk']; czy cokolwiek innego co odbiera dane z sesji. Proste jak budowa cepa. -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 496 Pomógł: 2 Dołączył: 15.07.2011 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
spoko ... ja to rozumiem że nie może być na tej samej stronie odbierania $_POST ... jednak chciałem aby struktura mojej aplikacji webowej była taka jak pokazałem w przykładzie ... jeśli tak to nie zadziała to faktycznie będę musiał to zbudować trochę inaczej
|
|
|
![]()
Post
#9
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
No to zrob warunek
Wowczas wszystko moze byc w jednym pliku. -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 496 Pomógł: 2 Dołączył: 15.07.2011 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
nie wiem czemu ale mi to nie działa mimo wszystko ... może pokażę całość jak mam teraz:
jakasstrona.pl wysyła w POST dane "a", "b", "c" do strony mojastrona.pl ... i tak w pliku index.php jest:
natomiast w pliku content_a.php jest:
tylko coś chyba źle mam zapisane ponieważ jeśli zrobię tak: strona1.php
a na strona2.php tak:
to działa tylko, że wolałbym jednak uniknąć wyświetlania takiego powitalnego INTRO Ten post edytował damianooo 3.11.2011, 12:07:38 |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 1 233 Pomógł: 87 Dołączył: 6.03.2009 Ostrzeżenie: (40%) ![]() ![]() |
Najprościej byłoby wyświetlać dane po otrzymaniu POST, czyli bez przekierowań.
Tyle ze wtedy F5 nie działa ![]() |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 496 Pomógł: 2 Dołączył: 15.07.2011 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
mam prośbę do nospor'a ... możesz spróbować mi jeszcze pomóc ? ... chciałbym uniknąć pokazywania intro "Witamy ... " ...
co robię źle jeszcze w tym skrypcie ? ... dzięki, |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 142 Pomógł: 28 Dołączył: 7.04.2008 Ostrzeżenie: (0%) ![]() ![]() |
w linii
masz nie zamknięty apostrof po e7. Poza tym jesli includejesz plik content_a to w nim nie musisz już sprawdzać warunków
bo zrobiłes to juz kilka linii wczesniej, sprawdzasz jedynie czy jest to e7 czy e8 oraz zmienną sesyjną |
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 496 Pomógł: 2 Dołączył: 15.07.2011 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
dzięki za uwagę , jednak apostrofu nie miałem tylko tu a normalnie w kodzie jest ... natomiast druga sprawa o której napisałeś i tak nie rozwiązuje problemu ...
nie wiem czemu nie chce utrzymać mi sesji jeśli zrobię to tak jak opisałem |
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 142 Pomógł: 28 Dołączył: 7.04.2008 Ostrzeżenie: (0%) ![]() ![]() |
a pokaż co wyświetli print_r($_SESSION) i print_r($_GET), daj to w pliku naglowek_a zamiast if'ow
|
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 496 Pomógł: 2 Dołączył: 15.07.2011 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
a więc tak ... nie wiem czemu prosiłeś abym to zrobił w pliku naglowek_a.php przecież tam nie ma IFów , są w content_a.php .... ale nie ważne zrobiłem tak jak mówiłeś i
w tablicy wszystko jest czyli zarówno dana z POST['a'] jak i z pozostałych dwóch ... chodzi o to że jeśli teraz kliknę w menu na odnośnik z $_GET['a'] == 'e8' czyli inną stroną, to ta tablica staje sie pusta ... (nie utrzymuje w sesji danych zapisanych przez POST ) |
|
|
![]()
Post
#17
|
|
Grupa: Zarejestrowani Postów: 142 Pomógł: 28 Dołączył: 7.04.2008 Ostrzeżenie: (0%) ![]() ![]() |
jeśli dobrze rozumiem to warunek w pliku content_a (wcześniej również chodziło mi o ten plik)
jest spełniony i robi się wszystko co w if'ie, masz tam również jakiś odnośnik do innej strony i po przejściu do tej strony zmiennej sesyjnej już nie ma. Czy tak? |
|
|
![]()
Post
#18
|
|
Grupa: Zarejestrowani Postów: 496 Pomógł: 2 Dołączył: 15.07.2011 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
tak dobrze ...
po prostu jest tam też menu i jak wybierę opcję z $_GET['a'] == 'e8' to już nie widać tych zmiennych Zbiorę wszystko do kupy żeby była większa jasność i zrobię małą symulację: plik (strona w sieci do której mam oczywiście dostęp) jakasstrona.php ma:
plik (moja strona w sieci ) mojastrona.php ma:
i teraz tak. Plik content_a.php zawiera w sobie menu oraz content i wygląda mniej więcej tak:
Ten post edytował damianooo 4.11.2011, 14:07:06 |
|
|
![]()
Post
#19
|
|
Grupa: Zarejestrowani Postów: 142 Pomógł: 28 Dołączył: 7.04.2008 Ostrzeżenie: (0%) ![]() ![]() |
Twój problem polega na tym że odnosnikiem
wywołujesz znowu stronę mojastrona.php ale nie przesyłając już do niej tablicy $_POST a to sprawdzasz w pierwszym if'ie. Wyciągnij ten warunek z tego if'a i wstaw troche ponizej tzn
|
|
|
![]()
Post
#20
|
|
Grupa: Zarejestrowani Postów: 496 Pomógł: 2 Dołączył: 15.07.2011 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
ok pomogłeś mi tomm ... teraz jest lepiej .. tylko trzeba jeszcze dodać ten kawałek:
bo inaczej jak odświeżam stronę albo jak przełączam się na inną stronę to wyświetla się pusta strona dzięki, pozdrawiam |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 05:00 |