Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用外部php脚本登录Joomla站点_Php_Joomla - Fatal编程技术网

使用外部php脚本登录Joomla站点

使用外部php脚本登录Joomla站点,php,joomla,Php,Joomla,我试图让用户从外部站点登录到Joomla站点,然后重定向到只有注册用户才能查看的页面。我用过,它似乎有点用。我可以看到用户通过Joomla管理面板登录,但是当我在脚本ie的末尾加入重定向时 标题“位置:注册页面url” Joomla提示我登录以查看注册页面。我做错了什么?原始帖子从未讨论过如何重定向用户。而且,当我没有在代码中加入重定向时,浏览器只会进入一个空白的白色页面。这正常吗?它不应该进入卷曲网站的主页吗 还请注意,我已尝试将返回url添加到代码中: $loginRedirectUrl =

我试图让用户从外部站点登录到Joomla站点,然后重定向到只有注册用户才能查看的页面。我用过,它似乎有点用。我可以看到用户通过Joomla管理面板登录,但是当我在脚本ie的末尾加入重定向时

标题“位置:注册页面url”

Joomla提示我登录以查看注册页面。我做错了什么?原始帖子从未讨论过如何重定向用户。而且,当我没有在代码中加入重定向时,浏览器只会进入一个空白的白色页面。这正常吗?它不应该进入卷曲网站的主页吗

还请注意,我已尝试将返回url添加到代码中:

$loginRedirectUrl = 'index.php?option=com_content&view=article&id=146&Itemid=178';
$loginRedirectUrl = base64_encode($loginRedirectUrl);  
$postfields['return'] = $loginRedirectUrl;
当我打印$r$postfields时,它返回所有已填充的内容。包括编码的返回url和令牌。所以,我很困惑,为什么看起来我已经登录了,但浏览器还是没有保存cookies之类的东西

Cookie未被禁用


任何帮助都将不胜感激。提前谢谢。

让我们看看是否可以一次完成这一步。另一篇文章中的代码只处理登录的事情。如果您未经编辑就运行它,那么在它运行时,您只会得到一个空白页,这是正常的


接下来,如果包括令牌在内的所有内容都显示在$postfields中,那么接下来我要检查的是Joomla管理员是否显示登录会话。如果是这样,那么问题就出在传输到浏览器的cookie中。如果不是,则表示会话已创建,但由于某种原因登录失败。

感谢您的回复Brent。是的,当我在Joomla管理面板中查看它时,用户似乎已经登录。那么,我如何确保cookie被正确地发送到浏览器呢?为了添加更多信息,我打印了一个cookie,结果是:数组[CDA9C54B0CF5704124DC5FEAD71F552]=>+55C+B+D4E10+D5E5C134340+7135F55+C52405A17+B+9+91657+412+D53+B5F+5+D1B+C4659+F5C4441574011165E46+51559125E+0+A1145E159[ff7c10b0a83d93e205965dd611041a95]=>6dfqlukf5fcq1qig3etjv413c3同样,我如何将正确的页面返回给用户?我可以使用header'Location:'功能吗?好的,这很有帮助。我以前应该问过这个问题-你使用的是什么版本的Joomla?至于重定向用户,你可以使用header'Location:'功能,这不应该是个问题。我正在访问的网站equesting是Joomla 1.5的一个实例。但是我来自Joomla 2.5网站。不确定这是否有区别。我不认为会有区别,除非Cookie被弄糊涂了。当我在第一次设置$ret后回显$ret时,我可以看到该网站和标题。当我print_r$\u cookie我仍然无法让浏览器识别cookie。我尝试在我的Joomla 2.5网站之外的html页面上创建一个简单表单。html页面调用脚本将用户登录到Joomla 1.5网站,然后将用户重定向到要求他们登录的页面。它在管理面板中显示,他们已登录,但Joomla站点正在将他们重定向到登录,要求他们先登录。