当使用var date = PropertiesService.getScriptProperties().getProperty('startTime');
var dateObj = new Date(date); // create the Date Object
var event = CalendarApp.getCalendarById('xxxxxo@group.calendar.google.com');
var event2 = event.createAllDayEvent(title, dateObj);
和JFactory::getApplication()->redirect()
的路由以及返回参数时,我在Joomla 3.6.2中遇到了问题。
代码看起来像这样。
index.php?option=com_users&view=login
$uri = urlencode(base64_encode(JURI::getInstance()->toString()));
JFactory::getApplication()->redirect(
JRoute::_('index.php?option=com_users&view=login&return='. $uri),
JText::_("YOU_MUST_BE_LOGGED_IN_TO_ACCESS_THIS_CONTENT", 'com_portail')
);
会是这样的:
$uri
通过这种方法,我被重定向到类似的东西:
aHR0cDovL2xvY2FsaG9zdC9wb3J0YWlsL2luZGV4LnBocD9vcHRpb249Y29tX3BvcnRhaWw=
特别是
请注意http://localhost/portail/index.php/component/users/?view=login& amp;return=aHR0cDovL2xvY2FsaG9zdC9wb3J0YWlsL2luZGV4LnBocD9vcHRpb249Y29tX3BvcnRhaWw=
。添加了2个空格,因此不会在堆栈中进行转换
这导致我的页面无法加载。
有什么想法吗?
由于
答案 0 :(得分:2)
如果您使用JRoute
将第二个参数设置为false
,它应该有效。
所以你的代码应该看起来像这样
JFactory::getApplication()->redirect(
JRoute::_('index.php?option=com_users&view=login&return='. $uri, false),
JText::_("YOU_MUST_BE_LOGGED_IN_TO_ACCESS_THIS_CONTENT", 'com_portail')
);
解释应该在JRoute-Docs:)
中找到问候
答案 1 :(得分:0)
更改此
$uri = urlencode(base64_encode(JURI::getInstance()->toString()));
要
$uri = base64_encode(JURI::getInstance()->toString());
不要使用urlencode
。