0
我想通過Get方法的參數發送給一個Joomla組件如何正確地將參數傳遞給joomla組件?
這是網址:
index.php?option=com_bahaedini&search=keyword&view=items&year=yyyy&month=mm&&day=dd
例如:
index.php?option=com_bahaedini&search=ebooks&view=items&year=2000&month=1&&day=20
這是ParseRoute功能:
function BahaediniParseRoute($segments)
{
$vars = array();
switch($segments[0])
{
case 'items':
$vars['view'] = 'items';
if(isset($segments[2]))
{
$year = explode(':', $segments[2]);
$vars['year'] = (int)$year[0];
}
if(isset($segments[3]))
{
$month = explode(':', $segments[3]);
$vars['month'] = (int)$month[0];
}
if(isset($segments[4]))
{
$day = explode(':', $segments[4]);
$vars['day'] = (int)$day[0];
}
if(isset($segments[1]))
{
$search = explode(':', $segments[1]);
$vars['search'] = (int)$search[0];
}
break;
}
return $vars;
通常URL更改爲:
http://127.0.0.1/component/bahaedini/items/ebooks/1395/1/8
我打印出來使用這種方法:
echo "<br>s:".$_ss = urldecode($app->input->getString('search'));
echo "<br>y:".$_yy = urldecode($app->input->getString('year'));
echo "<br>m:".$_mm = urldecode($app->input->getString('month'));
echo "<br>d:".$_dd = urldecode($app->input->getString('day'));
結果:
ss=ebook/yy=2000/mm=1/dd=8
每一件事情是正常至: 如果我刪除關鍵字是這樣的結果:
ss=2000/yy=1/mm=8/dd=
有沒有辦法解決這個問題?