laik-php
10.08.2010, 11:53:21
Mam takie pytanie, mam formularz w kilku krokach i chcę zapisać to do sesji: mam pole wyboru ...
<select name="paczka">
<option value="20">20</option>
<option value="30">30</option>
<option value="50">50</option>
</select>
I mam takie pytanie ... jak je "utrzymać" - te wartości w value przez następne 3 kroki, tak samo jak to zrobić z input w międzyczasie wyświetlać i zapisać do bazy ? bardzo proszę o radę, wskazówki a może po prostu już ktoś ma kodzik

albo wie jak go napisać

?
iVorIus
10.08.2010, 12:02:41
Oczywiście
session_start i
$_SESSION['paczka'] = $_POST['paczka'];
laik-php
10.08.2010, 13:40:29
A jeśli mam 2:
<select name="pal">
<option value="300">300</option>
<option value="300">500</option>
<option value="1000">1000</option>
</select>
</div>
<div id="elm2">
<select name="pacz">
<option value="20">20</option>
<option value="30">30</option>
<option value="50">50</option>
</select>
</div>
i w zależności od którego wybiorę i którą opcje ... ?
thek
10.08.2010, 13:49:58
Każdy select ma swój name. Wykorzystaj to podczas zapisu do sesji.
laik-php
10.08.2010, 14:02:55
no zrobiłem, ale jak klikne dalej i przejde do nastepnego kroku, wcale nie wyswietla to np. 500
Balor
10.08.2010, 14:04:42
zapisz do sesji, później przy przeładowaniu strony zczytaj z sesji...
laik-php
10.08.2010, 15:10:08
mam takie coś ...
if (isset($_POST["step"]) && $_POST["step"]=="1") { $pal = $_SESSION["pal"];
<form action="/order" method="post">
<p>$pal</p>
<input type="hidden" name="step" value="2">
<input type="submit" name="dalej" value='Idź dalej'>
</form>
... i dalsze kroki
i nieco póżniej
else if ($strona=="glowna") {
$_SESSION["pacz"] = $_POST["pacz"];
$_SESSION["pal"] = $_POST["pal"];
iVorIus
10.08.2010, 15:26:37
Zamieść tutaj wynik powyższego kodu.
laik-php
10.08.2010, 20:19:36
Nie wie czy to:
array(2) { ["pacz"]=> NULL ["pal"]=> NULL }
i co z tym ?
thek
10.08.2010, 21:02:29
Skoro dostajesz NULL to znaczy, że brak wartości. A co jest gdy dasz submit? Nadal NULL?
laik-php
10.08.2010, 21:17:23
No wlasnie jak klikam submit to przenosi mnie do nastepnego kroku, w którym nic sie nie wyświetla ;(
IceManSpy
10.08.2010, 22:04:04
A session_start dajesz na samym początku skryptu? Oraz w każdym pliku jest?
laik-php
11.08.2010, 07:21:58
Tak, jest w każdej (2)
everth
11.08.2010, 08:12:44
Tak z ciekawości - jak wygląda twój tag 'form'?
laik-php
11.08.2010, 08:24:53
<form action="/order" method="post">
<p>
<input name="r" type="radio" value="1" onclick="show('elm1')" checked="checked" /> Paleta
<input name="r" type="radio" value="2" onclick="show('elm2')" /> Paczka
</p>
<p>Waga</p>
<div id="elm1">
<select name="pal">
<option value="300">300</option>
<option value="300">500</option>
<option value="1000">1000</option>
</select>
</div>
<div id="elm2">
<select name="pacz">
<option value="20">20</option>
<option value="30">30</option>
<option value="50">50</option>
</select>
</div>
<p>Wymiary</p>
<input type="text" class="mini" maxlength="3" />
<input type="text" class="mini" maxlength="3" />
<input type="text" class="mini" maxlength="3" />
<input type="hidden" name="step" value="1">
<input type="submit" name="dalej" value="Dalej">
</form>
Jest takie coś, że jest na głównej jakby krok nr-0 następnie klikam dalej i przechodzi do folderu /order kroku 1-ego, później krok 2 - potwierdzenie, a krok 3 przekierowanie na platnosci. Ten wyżej to krok nr.0
everth
11.08.2010, 09:06:27
Cytat
folderu /order
Chwila, czy ty chcesz powiedzieć że nie odwołujesz się w formularzu bezpośrednio do pliku PHP tylko nakazujesz przejść pod folder order w którym pewnie masz jakiś index.php z krokiem pierwszym?
Jeśli tak to dwa rozwiązania - odwołujesz się bezpośrednio do index.php w katalogu order (moim zdaniem mniej "błędogenne") lub "/order" zamieniasz na "/order/" i tak dla każdego katalogu z krokami.
laik-php
12.08.2010, 17:49:07
No spróbje, dodam, że plik order, jest zmodyfikowany przez .htaccess i normalnie wygląda tak: index.php?strona=order i jest to pobierane z bazy ...
A jeśli chodzi o pierwszy sosób .. to jak mam się ... odwołać ? Chyba, że ktoś ma lepszy pomysł, jak zrobić taki system ?
everth
12.08.2010, 17:54:53
Jeśli to mod_rewrite to moje rady na niewiele ci się zdadzą. Problem zapewne leży gdzie indziej.
laik-php
12.08.2010, 18:41:20
A jak inaczej można rozwiązać ten system, jak inaczej go napisać ?
Kurcze, na prawdę potrzebuję go zrobić, a w necie, nie ma takich rzeczy ... można inaczej ?

?
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.