Yes, I must explode them manually. Thanks. Regards, Saša Stamenković
On Mon, May 24, 2010 at 10:13 PM, Hector Virgen <djvir...@gmail.com> wrote: > If your min/max price comes in as a single parameter with a hyphen between > the two values, you can use explode() to get the individual parts: > > $price = $this->_request->getParam('price'); > $priceParts = explode('-', $price); > $priceMin = $priceParts[0]; > $priceMax = $priceParts[1]; > > -- > Hector > > > > On Mon, May 24, 2010 at 1:07 PM, Bradley Holt > <bradley.h...@foundline.com>wrote: > >> >> On Mon, May 24, 2010 at 3:58 PM, Саша Стаменковић <umpir...@gmail.com>wrote: >> >>> Ok, but I neeed that dash search/price/100-200/... >>> >>> >> Why does it have to be a dash? Why can't you use a forward slash? If it >> must be a dash then you have a couple of options. One is to parse the >> parameter manually in your controller by removing the dash and pulling out >> the two values. The other option is to write your own router that understand >> dashes, not just forward slashes, as a separator of keys and/or values. Zend >> Framework's routing functionality as-is will not be able to understand the >> dashes as being anything other than part of your data. >> >> >>> Regards, >>> Saša Stamenković >>> >>> >>> >>> On Mon, May 24, 2010 at 9:55 PM, Bradley Holt < >>> bradley.h...@foundline.com> wrote: >>> >>>> On Mon, May 24, 2010 at 3:50 PM, Саша Стаменковић >>>> <umpir...@gmail.com>wrote: >>>> >>>>> Thanks Bradley. >>>>> >>>>> yes, thats the default routing. It accepts >>>>> /search/price/0/price/100000/year/1960/year/2010/city/0/sort_by/0/mode/1 >>>>> and >>>>> then price is an arrray in request. I want that behaviour, but just with a >>>>> bit prettyer url /search/price/0-100000/year/1960-2010... >>>>> >>>>> >>>> Try this, then: >>>> >>>> >>>> search/price/100/200/year/1947/2010/city/Nis/sort_by/sth/mode/1 >>>> >>>> >>>> search/price/:price_min/:price_max/year/:year_min/:year_max/city/:city/sort_by/:sort_by/mode/:mode >>>> >>>> >>>>> Regards, >>>>> Saša Stamenković >>>>> >>>>> >>>>> >>>>> On Mon, May 24, 2010 at 9:46 PM, Bradley Holt < >>>>> bradley.h...@foundline.com> wrote: >>>>> >>>>>> On Mon, May 24, 2010 at 3:39 PM, Саша Стаменковић <umpir...@gmail.com >>>>>> > wrote: >>>>>> >>>>>>> I need route like this >>>>>>> >>>>>>> search/price/100-200/year/1947-2010/city/Nis/sort_by/sth/mode/1 >>>>>>> >>>>>>> search/price/:price-:price/year/:year-:year/city/:city/sort_by/:sort_by/mode/:mode >>>>>>> >>>>>>> This end up with uncaught exception >>>>>>> 'Zend_Controller_Router_Exception' with message 'price-:price is not >>>>>>> specified'. >>>>>>> >>>>>>> Can I achieve that this range 100-200 be in request like array(100, >>>>>>> 200), if not, I'll be satisfied with "100-200". >>>>>>> >>>>>>> Can someone suggest best practices for building such routes? >>>>>>> >>>>>> >>>>>> I'm pretty sure you can only have one parameter per URL segment. Your >>>>>> ":price-:price" and ":year-:year" segments are trying to cram two >>>>>> parameters >>>>>> into one segment. Try the following instead: >>>>>> >>>>>> >>>>>> search/price-min/100/price-max/200/year-min/1947/year-max/2010/city/Nis/sort_by/sth/mode/1 >>>>>> >>>>>> search/price-min/:price_min/price-max/:price_max/year-min/:year_min/year-max/:year_max/city/:city/sort_by/:sort_by/mode/:mode >>>>>> >>>>>> Actually, if you do that then you don't need to explicitly define your >>>>>> route at all since you're simply using key/value pair. >>>>>> >>>>>> >>>>>>> >>>>>>> Regards, >>>>>>> Saša Stamenković >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>> >>>> >>>> >>>> >>> >> >> >