Autor | Zpráva | ||
---|---|---|---|
juraj Profil |
Zdravím
ako mám pomocou session preniesť hodnotu na druhú stránku. Ak sa chcem vrátiť z druhej stránky na prvú, aby bol vysvietený daný radiobutton,ktorý som pred tým stlačil . Dané súbory a ukážku si môžete pozrieť tu <form name="form1" method="post" action="" > <div style='position:relative;width: 505px;height:410px; backround-repeat:repeat-y;border:1px solid red;float:left'> <? if ( $_POST['sablony'] == "mesacnyriadkovy" ){ $st = 'checked="checked"'; ?> <input type="radio" name="sablony" <?php echo $st;?> onclick="javascript: submit()" value="mesacnyriadkovy">mesacnyriadkovy<br> <?}else{?> <input type="radio" name="sablony" onclick="javascript:submit()" value="mesacnyriadkovy">mesacnyriadkovy<br> <?}?> <? if (( $sablony == "dvojmesacny" )){//prikaz post posiela hodnotu cey post $st = 'checked="checked"'; ?> <input type="radio" name="sablony" <?php echo $st;?> onclick="javascript: submit()" value="dvojmesacny">dvojmesacny<br> <?}else{?> <input type="radio" name="sablony" onclick="javascript:submit()" value="dvojmesacny">dvojmesacny<br> <?}?> <? if (( $sablony == "dvojmesacny1" )){//prikaz post posiela hodnotu cey post $st = 'checked="checked"'; ?> <input type="radio" name="sablony" <?php echo $st;?> onclick="javascript: submit()" value="dvojmesacny1">dvojmesacny1<br> <?}else{?> <input type="radio" name="sablony" onclick="javascript:submit()" value="dvojmesacny1">dvojmesacny1<br> <?}?> <? echo $idm=$_SESSION["sablony"]; echo "<br>"; ?> <input type="button" name="odhlasit" class="butonik" onclick="location='?q=5';" value="Dalej" ><br> Stiahnut subory <a href="http://www.radiobutton.onlineinzercia.com/">tu</a> </div> <div style='position:relative;width: 505px;height:410px; backround-repeat:repeat-y;border:1px solid red;float:left'> <? //echo $sablony = $_POST['sablony']; echo $_SESSION['sablony'] =$_POST['sablony']; echo $sa = $_SESSION['sablony']; ?> </div> <br> </form> Vybrali ste <?echo $idm=$_SESSION["idm"]; echo $_POST['sablony']; ?> |
||
Jcas Profil |
#2 · Zasláno: 22. 6. 2014, 23:00:00
Přenést nějakou hodnotu z jedné stránky na druhou můžeš:
Buď pomocí odkazu. $neco = $_POST['neco']; echo '<a href="stranka.php?delej='.$neco.'">' $_GET
Nebo nastavení action formuláři na jinou stránku. Formulář se odešle na jinou stránku a ta uvidí hodnoty odeslané ve formuláři.
A nebo přiřazením hodnoty do $_SESSION . Ty jsou pak viditelné na každé stránce, kde na začátku provedeš session_start();
$_SESSION['neco'] = 'neco'; |
||
juraj Profil |
#3 · Zasláno: 22. 6. 2014, 23:46:09
Jcas:
Zdravím do page1.php som vložil taký príkaz $_SESSION['sablony'] =$_POST['sablony']; <? echo $sablony = $_SESSION['sablony']; ?> tak chcem,aby mi zostal označený radio button s danou hodnotou živý príklad tu |
||
Jcas Profil |
#4 · Zasláno: 23. 6. 2014, 05:49:42
stále tu hodnotu máš v session. stačí ji zkontrolovat a použít chcecked pro input radio.
Ale uvítal bych radu někoho zkušeného. Tady to ukládání do session mi připadá divné. Já bych to řešil nastavením action u fromluláře. <form action="page 2"></form> <form action="page1"> <input type="submit" value="zpět"> </form> |
||
quatzael Profil |
#5 · Zasláno: 23. 6. 2014, 09:20:57
juraj:
Moc nechápu co řešíš za problém. Na řádku 19 v prvním kódu máš proměnnou $sablony , to moc nechápu, kde se tam najednou vzala..
V tom druhým scriptu si ulož POST hodnoty do SESSION a v prvním scriptu udělej něco takhle jednoduššího. Nebudeš tam přece dvakrát vypisovat celej input <?php if ($_SESSION['sablony'] == "dvojmesacny") $st = 'checked="checked"'; else $st = ''; ?> <input type="radio" name="sablony" <?php echo $st;?> onclick="javascript: submit()" value="dvojmesacny">dvojmesacny<br> Když to chceš, aby se ty hodnoty zachovaly jen v případě, že uživatel klikne na tlačítko zpět v tom Tvým druhým scriptu, tak to neřeš pomocí SESSION, ale POST |
||
juraj Profil |
#6 · Zasláno: 23. 6. 2014, 09:45:00
quatzael:
Už som to opravil,ale teraz je problém v tom,že keď kliknem na danú položku na localhoste tak mi ju označí až na druhý klik ďakujem za rady |
||
juraj Profil |
#7 · Zasláno: 23. 6. 2014, 16:54:51
quatzael:
Mám este jednu otázku. Ak sa premenná session preniesie z druhej stránky na prvú ako sa skonvertuje spet na premennú POST dakujem za rady |
||
quatzael Profil |
#8 · Zasláno: 23. 6. 2014, 18:44:24
juraj:
Nevím co máš přesně na mysli.. $_POST['sablony'] = $_SESSION['sablony']; |
||
Jcas Profil |
#9 · Zasláno: 23. 6. 2014, 22:05:51
$_POST vzniká při odeslání formuláře.
- Odešlu form ze stránky 1 na stránku 1 (na tu samou). Stránka 1 vidí $_POST Když pak překliknu na stránku 2, tak stránka 2 ji nevidí. -Odešlu form ze stránky 1 na stránku 2. Stránka 2 vidí $_POST. Když pak překliknu na stránku 1, tak stránka 1 ji nevidí. Tím že ji takto definuješ je sice viditelná, ale při dalším odeslání formuláře se ti nepřenese. Formulář znova odešle nové hodnoty, dle vyplněnosti. |
||
quatzael Profil |
#10 · Zasláno: 23. 6. 2014, 22:33:04
juraj:
Pokud chceš poslat zpátky nějakou hodnotu tím Tvým formulářem, který vrací zpět na původní script, tak tam jen hoď hidden input: <form action="page1"> <input type="hidden" name="sablony" value="nejaka_hodnota"> <input type="submit" value="zpět"> </form> |
||
Časová prodleva: 10 let
|
0