2011-11-07 39 views
0

請耐心等待,如果這篇文章太長,我很抱歉...爲什麼我不能保留這個選擇框的值? ([]括號中的選擇框名稱和ID)

我試圖在Magento中構建自定義高級搜索表單。基本上,我有一大堆的選擇框並選擇值符合我的Magento的產品屬性值和附加到URL,因此,如果你有這樣的選擇框:

<select name="diameterange" id="diameterange"> 

     <option value=''<?php echo $_SESSION['post']['diameterange']=='all'?'selected="selected"':''; ?>>all</option> 
     <option value='15'<?php echo $_SESSION['post']['diameterange']=='15'?'selected="selected"':''; ?>>Small</option> 
     <option value='14'<?php echo $_SESSION['post']['diameterange']=='14'?'selected="selected"':''; ?>>Medium</option> 
     <option value='13'<?php echo $_SESSION['post']['diameterange']=='13'?'selected="selected"':''; ?>>Large</option> 

你選擇「小」,將導致該網址在:

http://mymagento.com/catalogsearch/advancedsearch/result/?diameterange=15

你可以看到這麼加載的結果頁面時,用戶看到與他們的選擇相同的搜索形式,我呼應值預先選定,高於他們的新搜索結果。這一切工作正常,除了一個屬性特別 - price[from]

這裏是我的price[from]選擇框代碼:

<select name="price[from]" id="price[from]"> 

     <option value=''<?php echo $_SESSION['post']['price[from]']==''?'selected="selected"':''; ?>>from (all)</option> 

     <option value='100'<?php echo $_SESSION['post']['price[from]']=='100'?'selected="selected"':''; ?>>from $100</option> 

     <option value='200'<?php echo $_SESSION['post']['price[from]']=='200'?'selected="selected"':''; ?>>from $200</option> 

     <option value='300'<?php echo $_SESSION['post']['price[from]']=='300'?'selected="selected"':''; ?>>from $300</option> 

     <option value='400'<?php echo $_SESSION['post']['price[from]']=='400'?'selected="selected"':''; ?>>from $400</option> 

     <option value='500'<?php echo $_SESSION['post']['price[from]']=='500'?'selected="selected"':''; ?>>from $500</option> 

     <option value='600'<?php echo $_SESSION['post']['price[from]']=='600'?'selected="selected"':''; ?>>from $600</option> 

     <option value='700'<?php echo $_SESSION['post']['price[from]']=='700'?'selected="selected"':''; ?>>from $700+</option> 

    </select> 

這個箱子和其選定的值正常工作儘可能的URL追加推移,它會爲你帶來正確的結果,但我不能讓這個選擇框記住它的值,就像我可以用其他屬性一樣。因此,如果用戶在此框中選擇了某個值,則他的選擇不會在搜索結果頁面上的搜索表單中被預先選定。

我相信這與選擇框名稱和ID中的[]括號有關。我怎樣才能迴應這個特定框的選擇?

謝謝

回答

1

它應該是可能是

$_SESSION['post']['price']['from'] 

代替。您可以通過執行var_dump($_SESSION['post'])進行驗證。

+0

是做到了,謝謝馬克! – rocky

1

不知道你是如何翻譯的$ _ POST到會話中,但也許你想嘗試改變$_SESSION['post']['price[from]']$_SESSION['post']['price']['from']

+0

法布里齊奧,你的答案奏效了,我已經'檢查過'馬克的答案,但是我贊成你......謝謝! – rocky

相關問題