2012-08-07 64 views
0

我有一個這樣的形式:鏈接不保存

<form id="candida-form" action="index.php?gender=<? echo $sex; ?>?step=<? echo $step; ?>" method="get"> 
    <? if ($step == -1): ?> 

    <div style="padding-left: 95px;padding-top: 40px;"> 
          <div class="radio-option"><input type="radio" id="male" name="form_sex" value="0" checked /> <label for="male" style="cursor:pointer;"><img src="images/icon_man.png" /> Male</label></div> 
          <div class="radio-option"><input type="radio" id="female" name="form_sex" value="1" /> <label for="female" style="cursor:pointer;"><img src="images/icon_woman.png" /> Female</label></div> 
          <div class="radio-option" style="padding-top:9px;"><input type="radio" id="child" name="form_sex" value="2" /> <label for="child" style="cursor:pointer;"><img src="images/icon_child.png" /> Child</label></div></div> 
          <div class="clear"></div> 

<div class="submit-wrapper"><input type="submit" id="nextstep" value="Next Step" /></div> 

<? elseif ($step == 0): ?> 
        <div class="form-inner"> 

        <? if ($sex == 0): ?> 
         <h2>MALE</h2> 
         <div class="yesno"> 
          <div class="section-description"> 
           <p>text</p> 
          </div> 
        <? elseif ($sex == 1): ?> 
         <h2>FEMALE</h2> 
         <div class="yesno"> 
          <div class="section-description"> 
           <p>text</p> 
          </div> 
        <? else: ?> 
         <h2>CHILDREN</h2> 
         <div class="yesno"> 
          <div class="section-description"> 
           <p>text</p> 
          </div> 
        <? endif; ?> 

和變量是那些:

$step = intval($_POST[ 'form_post' ]); // Gather completed step 
$sex = intval($_POST[ 'form_sex' ]); // Gather gender 

的想法是,當我點擊該輸入爲「下一步」,在瀏覽器的URL被改變喜歡:http://xyz.com/survey/index.php?gender=0?step=1

,但如果我想提出確切的鏈接http://xyz.com/survey/index.php?gender=0?step=1在一個新的瀏覽器,所以我可以去步驟1在男性性別的,它不會,它會去索引no的步驟,請解決任何問題?你能幫助任何想法嗎?

+0

通過'http://xyz.com/survey/index.php性別= 0&步= 1' – Peon 2012-08-07 12:03:38

+0

表單使用 '得到' 這樣$ _POST ['form_sex']從來沒有設置,使用$ _GET ['form_sex'] PS $步驟仍然不是$ step + 1的下一頁 – Waygood 2012-08-07 12:06:42

+0

@Waygood最後更新是'

&step = <?echo $ step + 1;?>「method =」post「>'但不工作:( – Abude 2012-08-07 12:13:45

回答

1

您的URL有錯誤的參數。正確的語法是:中

http://xyz.com/survey/index.php?gender=0&step=1 

代替

http://xyz.com/survey/index.php?gender=0?step=1 

的UE &串更多的變數在一起。 ?僅用於第一個說URL的其餘部分是變量。

更改這條線在你的PHP代碼:

<form id="candida-form" action="index.php?gender=<? echo $sex; ?>?step=<? echo $step; ?>" method="get"> 

<form id="candida-form" action="index.php?gender=<? echo $sex; ?>&step=<? echo $step; ?>" method="get"> 

編輯:另外,更改$step = intval($_POST[ 'form_post' ]);到:

$step = intval($_POST[ 'step' ]); 

你沒有得到你的變量回正常。

+0

由於表單爲GET,這些參數會得到擦除?應該一步一個隱藏的輸入呢? – Waygood 2012-08-07 12:09:29

+0

我試圖把它放在你的方式,所以鏈接是像http://xyz.com/survey/index.php?gender=0&step=1,但不工作:(另一件事我把方法=「後」不是「得到」,因爲它不工作(形式) – Abude 2012-08-07 12:09:47

+0

@Waygood不,它只是意味着其他任何東西都被附加到表單的'action'上。 – Fluffeh 2012-08-07 12:10:21

0

您的網址不正確。您需要使用&字符來分隔參數。不是另一個問號:

http://xyz.com/survey/index.php?gender=0?step=1 

應該

http://xyz.com/survey/index.php?gender=0&step=1 
+0

它不工作:(我試過,但不是與'&' – Abude 2012-08-07 12:11:18

+0

10任何想法,請幫助我嗎?謝謝! – Abude 2012-08-07 15:47:13