2013-11-20 59 views
0

我正在使用6個步驟進行配置過程。在每個步驟中,我使用一個表單提交併將輸入數據保存在SESSION變量中。提交表單,訪問下一頁,設置會話變量

在每一步我有「下一步按鈕」,它需要提交頁面的形式,並重定向到下一個步驟。

這段代碼檢查提交按鈕「wz_submit1」是否設置,然後保存變量。

if(isset($_POST['wz_submit1'])) : 

    // Save wz_width in session 
    $wz_width = $_POST['wz_width']; 
    $_SESSION['wz_width'] = $wz_width; 

    // Save wz_height in session 
    $wz_height = $_POST['wz_height']; 
    $_SESSION['wz_height'] = $wz_height; 

endif; 

這是 「下一個」 按鈕:

<a class="wz_next_button" href="http://www.mynextstepurl.test">Next step</a> 

這是我的形式:

<form id="wz_form1" method="post"> 


     <ul class="wz_input"> 

      <li> 
       <label>A</label> 
       <input name="wz_width" id="wz_width" type="text" value="<?php if(isset($_SESSION['wz_width'])) : echo $_SESSION['wz_width']; endif; ?>" /> 
       <span>mm</span> 
      </li> 

      <li> 
       <label>B</label> 
       <input name="wz_height" id="wz_height" type="text" value="<?php if(isset($_SESSION['wz_height'])) : echo $_SESSION['wz_height']; endif; ?>" /> 
       <span>mm</span> 
      </li> 

     </ul><!--End wz_input--> 

     <input name="wz_submit1" type="hidden" /> 

    </form> 

如果我用一個正常的 「wz_submit1」 提交按鈕,它提交表單權並在會話中保存變量。但之後沒有重定向到下一頁。

如果我把一個的onclick表單上的「下一個」鏈接提交,重定向到下一個頁面轉到正確的,但我的變量不被設置。

我希望你明白我的問題,並希望你能幫助我。

如果你對如何做它有更好的想法(例如沒有每頁的表單),請告訴我。

謝謝!

+0

您是否在每頁的頂部開始了會話?即'session_start();' – Ali

+0

是的,我已經開始了會話。 – Robbert

回答

0

你能做到這樣...當表單提交,所有的變量被保存那麼它會重定向到下一頁......

if(isset($_POST['wz_submit1'])) : 

// Save wz_width in session 
$wz_width = $_POST['wz_width']; 
$_SESSION['wz_width'] = $wz_width; 

// Save wz_height in session 
$wz_height = $_POST['wz_height']; 
$_SESSION['wz_height'] = $wz_height; 
header('Location : www.yournextpage.com'); 
endif; 

你的下一個按鈕,並從將...

<form method="post" action="samefile.php"> 
    //your other fields 
    <input type="submit" value="next" name="wz_submit1"/> 
</form> 
+0

這對我不起作用。發生錯誤並且沒有重定向。 – Robbert