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>
Na druhej stránke mám
Vybrali ste
<?echo $idm=$_SESSION["idm"];
echo $_POST['sablony'];
?>
ďakujem za rady
Jcas
Profil
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.'">'
Tyto hodnoty jsou potom v $_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
Jcas:
Zdravím

do page1.php som vložil taký príkaz
 $_SESSION['sablony'] =$_POST['sablony'];
na page2.php
<? 
        echo $sablony =  $_SESSION['sablony'];

?>
Ak kliknem na tlačidlo ďalej a vyberiem napr. dvojmesacny1 a z druhej stránky kliknem na tlačidlo spet
tak chcem,aby mi zostal označený radio button s danou hodnotou
živý príklad tu
Jcas
Profil
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
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
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
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
juraj:
Nevím co máš přesně na mysli..
$_POST['sablony'] = $_SESSION['sablony'];
??
Jcas
Profil
$_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
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>

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: